Java 基礎【12】java.io.file 文件(文件夾) 創建和刪除

来源:http://www.cnblogs.com/java-class/archive/2016/07/13/5667126.html
-Advertisement-
Play Games

使用 java.io.file 創建文件(文件夾),算是 java 最基礎的知識。 JDK API 中描述: 來段代碼會看的更清楚: 輸出: 這樣就很清楚了,mkdir() 創建單個文件夾,要確保它的上級文件夾存在。 mkdirs() 創建多個文件夾,並且不需要保證它的上級文件夾存在。 將文件輸出到 ...


    使用 java.io.file 創建文件(文件夾),算是 java 最基礎的知識。

    JDK API 中描述:

   來段代碼會看的更清楚:

        File file1 = new File("F:/AAA/BBB/CCC");
        if (file1.mkdirs()) {
            System.out.println("多級層文件夾創建成功!創建後的文件目錄為:" + file1.getPath() + ",上級文件為:" + file1.getParent());
        }

        File file2 = new File("F:/AAA/BBB/CCC/DDD");
        if (file2.mkdir()) {
            System.out.println("單文件夾 DDD 創建成功!創建後的文件目錄為:" + file2.getPath() + ",上級文件為:" + file2.getParent());
        }

        File file3 = new File("F:/AAA/BBB/CCC/DDD","mytest.txt");
        try {
            if (file3.createNewFile()) {
                System.out.println("多級層文件夾下文件創建成功!創建了的文件為:" + file3.getAbsolutePath() + ",上級文件為:" + file3.getParent());
            }
        } catch (IOException e) {
            e.printStackTrace();
        }

  輸出:

  這樣就很清楚了,mkdir() 創建單個文件夾,要確保它的上級文件夾存在。

  mkdirs() 創建多個文件夾,並且不需要保證它的上級文件夾存在。

  將文件輸出到文件夾下要確保目標文件夾存在。

 【附贈】遞歸刪除整個文件夾(文件)方法:

    /**
     * 刪除某個文件夾下的所有文件夾和文件
     *
     * @param delpath
     * @throws FileNotFoundException IOException
     * @return boolean
     */
    public static boolean deletefile(String delpath) throws Exception {
        File file = new File(delpath);
        if (file.isDirectory()) {
            String[] filelist = file.list();
            for (String delFile : filelist) {
                File delfile = new File(delpath + File.separator + delFile);
                if (delfile.isDirectory()) {
                    deletefile(delpath + File.separator + delFile);
                } else
                    System.out.println("正在刪除文件:" + delfile.getPath() + ",刪除是否成功:" + delfile.delete());
            }
            System.out.println("正在刪除空文件夾:" + file.getPath() + ",刪除是否成功:" + file.delete());
        } else
            System.out.println("正在刪除文件:" + file.getPath() + ",刪除是否成功:" + file.delete());
        return true;
    }

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • cocos2dx版本為3.10 1.在使用spine的過程中,發現了一個比較嚴重的問題:每次創建SkeletonAnimation的時候都會很卡,即使是使用同一個骨骼數據skeletonData。 跟蹤代碼發現,在每次調用函數spine::SkeletonAnimation::createWithF ...
  • 在實戰中學習Spring,本系列的最終目的是完成一個實現用戶註冊登錄功能的項目。 預想的基本流程如下: 1、用戶網站註冊,填寫用戶名、密碼、email、手機號信息,後臺存入資料庫後返回ok。(學習IOC,mybatis,SpringMVC的基礎知識,表單數據驗證,文件上傳等) 2、伺服器非同步發送郵件 ...
  • 今天實現了一個登錄功能的Struts2小程式。 期間遇到了許多問題,記憶猶新的是 (1)新版本的tomcat9和eclipse Neon Release (4.6.0) 發生了衝突,啟動伺服器的時候老是有警告,但是又找不到問題,不得已回滾到了以前的tomcat8,沒想到竟然好了!好了?這時候心裡真特 ...
  • 想學習爬蟲,又想瞭解python語言,有個python高手推薦我看看scrapy。 scrapy是一個python爬蟲框架,據說很靈活,網上介紹該框架的信息很多,此處不再贅述。專心記錄我自己遇到的問題以及解決方案吧。 給幾個鏈接吧,我是根據這幾個東西來嘗試學習的: scrapy中文文檔(0.24版, ...
  • 轉自:http://www.cnblogs.com/colincode/archive/2011/03/30/1999604.html 1.FastReport中如果訪問報表中的對象?可以使用FindObject方法。TfrxMemoView(frxReport1.FindObject(’memo1 ...
  • Java 淺析三大特性之一多態 之前我們的文章講了Java的封裝和繼承,封裝講的時候,並沒有體現出來封裝的強大之處,反而還要慎用封裝。因為這時的封裝還沒有和多態聯繫到一起,還無法看出向上轉型的厲害之處。 多態,是指同一個行為具有多種的表現形式。同一個方法根據調用對象的不同而產生多種結果。對於Java ...
  • 業務代碼中常和時間打交道, 例如時間串, 時間戳之間轉換. 當前時間是否是同一天等. 這裡就是為瞭解決這個問題.分享了這篇博文. ...
  • ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...