Java 基礎【16】 文件(文件夾) 創建和刪除


    使用 java.io.file 創建文件(文件夾),算是 java 最基礎的知識,但實戰項目中還是需要知曉細節。

    比如 File 類中的 mkdir() 和 mkdirs() 的區別。

    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;
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM