删除某个文件夹及下面所有文件

删除某个文件夹及下面所有文件

    public static void main(String[] args) {
        File file = new File("F:/test/2020");
        delDir(file);
    }
    
    public static void delDir(File file) {
        if(file.isDirectory()) {
            String[] list = file.list();
            //list[i]当前文件名
            for(int i = 0; i < list.length; i++) {
                File file2 = new File(file.getAbsolutePath() + "/" + list[i]);
                delDir(file2);
            }
        }
        
        file.delete();
    }    

保留要删除文件下的某一个文件/文件夹,删除其它

    public static void main(String[] args) {
        File file = new File("F:/test/2020");
        //要保留的文件夹/文件名
        File file2 = new File("F:/test/2020/11/19");
        delDir(file, file2.getAbsolutePath());
        System.out.println("---success---");
    }
    
    public static void delDir(File file, String path) {
        if(file.isDirectory()) {
            String[] list = file.list();
            for(int i = 0; i < list.length; i++) {
                File file2 = new File(file.getAbsolutePath() + "/" + list[i]);
                delDir(file2, path);
            }
        }
        
        if(!path.equals(file.getAbsolutePath())) {
            file.delete();
        }
    }
原文地址:https://www.cnblogs.com/zheaven/p/14006506.html