首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >java 删除目录下所有文件_Java删除文件、目录及目录下所有文件的方法实例

java 删除目录下所有文件_Java删除文件、目录及目录下所有文件的方法实例

作者头像
全栈程序员站长
发布2022-09-01 08:07:02
发布2022-09-01 08:07:02
4.6K0
举报

大家好,又见面了,我是你们的朋友全栈君。

前言

本文主要实现的功能是删除某个目录及目录下的所有子目录和文件,涉及到的知识点:File.delete()用于删除“某个文件或者空目录”!所以要删除某个目录及其中的所有文件和子目录,要进行递归删除。

具体代码示例如下:

import java.io.File;

public class DeleteDirectory {

/**

* 删除空目录

* @param dir 将要删除的目录路径

*/

private static void doDeleteEmptyDir(String dir) {

boolean success = (new File(dir)).delete();

if (success) {

System.out.println(“Successfully deleted empty directory: ” + dir);

} else {

System.out.println(“Failed to delete empty directory: ” + dir);

}

}

/**

* 递归删除目录下的所有文件及子目录下所有文件

* @param dir 将要删除的文件目录

* @return boolean Returns “true” if all deletions were successful.

* If a deletion fails, the method stops attempting to

* delete and returns “false”.

*/

private static boolean deleteDir(File dir) {

if (dir.isDirectory()) {

String[] children = dir.list();

//递归删除目录中的子目录下

for (int i=0; i

boolean success = deleteDir(new File(dir, children[i]));

if (!success) {

return false;

}

}

}

// 目录此时为空,可以删除

return dir.delete();

}

/**

*测试

*/

public static void main(String[] args) {

doDeleteEmptyDir(“new_dir1”);

String newDir2 = “new_dir2”;

boolean success = deleteDir(new File(newDir2));

if (success) {

System.out.println(“Successfully deleted populated directory: ” + newDir2);

} else {

System.out.println(“Failed to delete populated directory: ” + newDir2);

}

}

}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/142077.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档