删除当前目录下所有文件以及空文件夹
业务中遇到,记录一下
/**
* 删除指定目录下的空文件夹,不包括自身
*
* @param file 文件总目录 file
*/
public static void deleteFolder(File file) {
File[] files = file.listFiles();
if (files != null) {//如果包含文件进行删除操作
for (File value : files) {
if (value.isFile()) {
//删除子文件
value.delete();
} else if (value.isDirectory()) {
//通过递归的方法找到子目录的文件
deleteFolder(value);
}
value.delete();//删除子目录
}
}
}
当包含文件时不进行删除
/**
* 删除指定目录下的空文件夹,不包括自身目录
*/
public boolean deleteEmptyFolder(String srcPath) {
File file = new File(srcPath);
List<String> fileList = getFiles(new ArrayList<String>(), file);
//log.info(fileList.size() + "------------" + file.getName());
if (fileList.size() == 0) {
deleteFolder(file);
return true;
} else {
log.info("[(" + file.getName() + ")有文件存在,不进行删除]");
return false;
}
}
运行
public static void main(String[] args) {
File file =new File("D:\\test")
deleteEmptyFolder(file) ? "[空文件夹删除成功!!]" : "[删除失败!]"
}
本文来自博客园,作者:xiaolifc,转载请注明原文链接:https://www.cnblogs.com/xiaolibiji/p/15826305.html
分类:
Java
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?