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

java 删除目录下所有文件_Java删除文件、目录及目录下所有文件的方法实例前言本文主要实现的功能是删除某个目录及目录下的所有子目录和文件,涉及到的知识点:File.delete()用于删除“某个文件或者空目录”!所以要删除某个目录及其中的所有文件和子目录,要进行递归删除。具体代码示例如下:importjava.io.File;publicclassDeleteDirectory{/***删除空目录*@paramdir将要删除的目录路径*/private…

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

前言

本文主要实现的功能是删除某个目录及目录下的所有子目录和文件,涉及到的知识点: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.net/142077.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 共勉:作为一名程序员你应该怎么提一个高质量的问题?

    做一个积极的人编码、改bug、提升自己我有一个乐园,面向编程,春暖花开!又是一个周五,今天依旧不分享技术,这几天不知道怎么,感觉有点累,昨天十点就睡觉了,很久没有这么早睡觉了。现在已经是晚上10点了,我还在码字中,今天争取早点睡觉。今天整理一点关于如何提问的内容,因为最近一段时间有一些技术朋友加我好友,一起探讨一些技术问题。但是一些伙伴加我之后,提问的姿势可能有点不太正确,导致聊了很一会…

    2022年2月28日
    46
  • mac远程连接mysql「建议收藏」

    mac远程连接mysql「建议收藏」sudosshroot@IPmysql-uroot-p-hIP

    2022年10月13日
    2
  • vs2010使用过程中的问题和解决、vs密钥[通俗易懂]

    vs2010使用过程中的问题和解决、vs密钥[通俗易懂]关于VS工具箱灰色,不可用的解决方案使用vs的命令行工具,在命令行中运行:devenv/ResetSkipPkgs,重新打开vs,重置一下工具箱,OK,成功了~!

    2022年5月3日
    49
  • Retrofit2.0 请求数据 一直出返回网络错误,错误代码 414

    Retrofit2.0 请求数据 一直出返回网络错误,错误代码 414今天使用rettorfit去请求数据一直不成功,请求逻辑上以及请求参数上都没有问题,后台也验证过是通的(我用xutils3请求也是成功的,后来意识到xutils3是将参数放在请求体里面),但是就是一直不能请求成功,后来终于发现还是参数的问题。由于使用的是retrofitPOST请求,查询字段用的是@QueryMap,而这个查询时是直接拼接在url的后面,但是url的请求接口是有长度限制的…

    2022年5月5日
    58
  • 【oracle】varchar和varchar2区别「建议收藏」

    【oracle】varchar和varchar2区别「建议收藏」1.varchar是标准sql里面的。varchar2是oracle提供的独有的数据类型。2.varchar对于汉字占两个字节,对于英文是一个字节,占的内存小,varchar2都是占两个字节。3.varchar对空串不处理,varchar2将空串当做null来处理。4.varchar存放固定长度的字符串,最大长度是2000,varchar2是存放可变长度的字符串,最大长度是4000….

    2022年6月15日
    33
  • pycharm导入模块变灰_pycharm新建项目灰色

    pycharm导入模块变灰_pycharm新建项目灰色@PyCharmPyCharmimport导入包变灰是因为还没有用到。

    2022年8月27日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号