您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關如何在Java中刪除任意目錄,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
代碼如下:
package demo1; import java.io.File; import java.util.ArrayList; public class Demo1 { /** * 不使用遞歸刪除目錄 * @param args */ public static void main(String[] args) { deleteDirectory("E:\\test"); } public static void deleteDirectory(String rootPath) { //fileList模擬的是一個隊列 ArrayList<File> fileList = new ArrayList<File>();//存儲文件和直接子目錄包含文件的目錄 //directoryList模擬的是一個棧 ArrayList<File> directoryList = new ArrayList<File>();//存儲直接子目錄不包含文件的目錄 File root = new File(rootPath); if(!root.exists()){ System.out.println("您輸入的不是目錄"); return; } if(root.isFile()){ root.delete(); System.out.println("您輸入的是文件,已刪除成功"); return; } fileList.add(0, root);//第一次入隊列 while(fileList.size() > 0) { File dir = fileList.remove(0);//模擬一個出隊列的過程 File[] files = dir.listFiles(); for (int i = 0; i < files.length; i++) { if(files[i].isFile()) files[i].delete(); else fileList.add(files[i]);//模擬一個入隊列的過程 } directoryList.add(dir);//模擬一個壓棧的過程 } //倒序遍歷,模擬一個彈粘的過程 for (int i = directoryList.size() - 1; i >= 0; i--) { directoryList.get(i).delete(); } if(!root.exists()){ System.out.println("您輸入的是文件夾,已刪除成功"); } } }
關于如何在Java中刪除任意目錄就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。