1. 程式人生 > >Java刪除資料夾及資料夾下的子資料夾和子檔案

Java刪除資料夾及資料夾下的子資料夾和子檔案

Java刪除資料夾及資料夾下的子資料夾和子檔案

public class Test {
public static void main(String[] args){
    File file = new File("D:\\a");
    delAllFile(file);
}

/**
 * 刪除檔案或資料夾
 * @param directory
 */
public static void delAllFile(File directory){
    if (!directory.isDirectory()){
        directory.delete();
    } else{
        File [] files = directory.listFiles();

        // 空資料夾
        if (files.length == 0){
            directory.delete();
            System.out.println("刪除" + directory.getAbsolutePath());
            return;
        }

        // 刪除子資料夾和子檔案
        for (File file : files){
            if (file.isDirectory()){
                delAllFile(file);
            } else {
                file.delete();
                System.out.println("刪除" + file.getAbsolutePath());
            }
        }

        // 刪除資料夾本身
        directory.delete();
        System.out.println("刪除" + directory.getAbsolutePath());
    }
}

}