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

}

猜你喜欢

转载自blog.csdn.net/maikebruce/article/details/83928239