public static boolean deleteFile(final File file) {
try {
if (null != file) {
final LinkedList<File> dirLinkedList = new LinkedList<>();
if (file.exists()) {
if (file.isFile()) {
file.delete();
} else if (file.isDirectory()) {
dirLinkedList.add(file);
for (int i = 0; i < dirLinkedList.size(); ++i) {
final File child = dirLinkedList.get(i);
final File[] items = child.listFiles();
if (null != items) {
for (final File item : items) {
if (item.isFile()) {
item.delete();
} else if (item.isDirectory()) {
dirLinkedList.add(item);
}
}
}
}
}
}
while (dirLinkedList.size() > 0){
dirLinkedList.removeLast().delete();
}
return !file.exists();
}
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
Java 高效删除目录的方法 (可以避免栈溢出)
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 成长记录-连载(三十六) ——我的第一篇五千字长文,说了什么,你一定想不到 并不是不想每天写公众号,而是之前思考怎...
- 问:简单谈谈你对 Java 中 RTTI 与反射的理解? 答:之所以存在 RTTI(Run-Time Type I...
- 摘要:“微信指数”高调上线,可谓引爆朋友圈,风靡整个互联网媒体圈。然而,微信指数席卷网络风暴还未停歇,新一轮风暴又...