java 递归删除文件夹目录和文件的案例代码

2020-05-18 09:00:05 | 编辑

java 递归删除文件夹目录和所有文件的案例代码

import java.io.File;
 
/**
 * @version 2020/4/12 9:35
 * @description itxw
 */
public class Test {
    public void main(String[] args){
        String path = "D:\\test";
        File file = new File(path);
        deleteDirectory(file);
    }
 
    /**
     * 递归删除文件、文件夹
     * @param file
     */
    public void deleteDirectory(File file){
        File[] list = file.listFiles();
        Integer i = 0;
        for (File f:list){
            if (f.isDirectory()){
                //删除子文件夹
                deleteDirectory(new File(f.getPath()));
            }else{
                //删除文件
                f.delete();
                i ++;
            }
        }
        //重新遍历一下文件夹内文件是否已删除干净,删除干净后则删除文件夹。
        if (file.listFiles().length <=0 ){
            file.delete();
            return;
        }
    };
 
}

 

登录后即可回复 登录 | 注册
    
关注编程学问公众号