一個Java遞歸刪除目錄的方法


 1 public static void delDir(File f) {
 2     // 判斷是否是一個目錄, 不是的話跳過, 直接刪除; 如果是一個目錄, 先將其內容清空.
 3     if(f.isDirectory()) {
 4         // 獲取子文件/目錄
 5         File[] subFiles = f.listFiles();
 6         // 遍歷該目錄
 7         for (File subFile : subFiles) {
 8             // 遞歸調用刪除該文件: 如果這是一個空目錄或文件, 一次遞歸就可刪除. 如果這是一個非空目錄, 多次
 9             // 遞歸清空其內容后再刪除
10             delDir(subFile);
11         }
12     }
13     // 刪除空目錄或文件
14     f.delete();
15 }

順便說一下, 64位的系統大概可以調用幾萬次遞歸. 我們基本上不會創建有一萬多層的目錄. 所以這種方法可以應對一般情況, 不會造成內存溢出等問題.


免責聲明!

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



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