import java.io.File;

public class FileUtils {

/**

* 删除文件,可以是文件或文件夹

* @param fileName:要删除的文件名

* @return 删除成功返回true,否则返回false

*/

public static boolean delete(String fileName) {

File file = new File(fileName);

if (!file.exists()) {

System.out.println("删除文件失败:" + fileName + "不存在!");

return false;

} else {

if (file.isFile())

return deleteFile(fileName);

else

return deleteDirectory(fileName);

}

}

/**

* 删除单个文件

* @param fileName:要删除的文件的文件名

* @return 单个文件删除成功返回true,否则返回false

*/

public static boolean deleteFile(String fileName) {

File file = new File(fileName);

// 如果文件路径所对应的文件存在,并且是一个文件,则直接删除

if (file.exists() && file.isFile()) {

if (file.delete()) {

System.out.println("删除单个文件" + fileName + "成功!");

return true;

} else {

System.out.println("删除单个文件" + fileName + "失败!");

return false;

}

} else {

System.out.println("删除单个文件失败:" + fileName + "不存在!");

return false;

}

}

/**

* 删除目录及目录下的文件

* @param dir:要删除的目录的文件路径

* @return 目录删除成功返回true,否则返回false

*/

public static boolean deleteDirectory(String dir) {

// 如果dir不以文件分隔符结尾,自动添加文件分隔符

if (!dir.endsWith(File.separator))

dir = dir + File.separator;

File dirFile = new File(dir);

// 如果dir对应的文件不存在,或者不是一个目录,则退出

if ((!dirFile.exists()) || (!dirFile.isDirectory())) {

System.out.println("删除目录失败:" + dir + "不存在!");

return false;

}

boolean flag = true;

// 删除文件夹中的所有文件包括子目录

File[] files = dirFile.listFiles();

for (int i = 0; i < files.length; i++) {

// 删除子文件

if (files[i].isFile()) {

flag = deleteFile(files[i].getAbsolutePath());

if (!flag)

break;

}

// 删除子目录

else if (files[i].isDirectory()) {

flag = deleteDirectory(files[i].getAbsolutePath());

if (!flag)

break;

}

}

if (!flag) {

System.out.println("删除目录失败!");

return false;

}

// 删除当前目录

if (dirFile.delete()) {

System.out.println("删除目录" + dir + "成功!");

return true;

} else {

return false;

}

}

public static void main(String[] args) {

//测试

String dir = "C:/Users/Administrator/Downloads/a";

delete(dir);

}

}

java删除目录以及目录下文件,java删除文件、删除目录及目录下的文件相关推荐

  1. python从文件中删除某个字符,后保存该文件

    从文件中删除某个字符,后保存该文件 原本是用vs全部替换,结果发现文件太多了,将近12000个文件,非常费时间,然后就给他写了个脚本哈哈,比较快4秒就搞定了.代码拿走直接就可以用途. #!/usr/b ...

  2. 如何恢复计算机隐藏的文件夹,电脑文件夹删除了怎么恢复 电脑隐藏的文件夹怎么找到...

    我们在使用电脑的时候难免会有误操作的时候,比如我们想清丽电脑中的垃圾文件,不小心将一个重要的文件一起删除了,这时候我们只能想办法恢复吧!可是怎么恢复呢?其实很简单,下面小编为大家带来文件夹误删除的详细 ...

  3. win10计算机里文件夹怎么删除文件,如何删除win10“此电脑”中6个文件夹?

    更新完win10系统,我们会发现打开"此电脑",相比win7相比,除了还有传统的硬盘分区外,还多了6个文件夹:视频.图片.文档.下载.音乐和桌面.讲真,这些文件夹似乎也用不上,对于 ...

  4. 计算机垃圾回收站内容怎么恢复,电脑回收站文件被删除了如何恢复|电脑恢复回收站文件的方法...

    电脑会定时清理回收站里的垃圾文件,缓解内存空间压力,想要找回被删除的时候,发现文件已经被清空了.当我们后悔删掉的话,就可以去回收站把它恢复回来.有什么办法恢复?接下去小编分享电脑恢复回收站文件的方法. ...

  5. java 文件递归删除文件夹_Java十行代码实现递归删除文件夹中所有文件

    递归删除文件夹中所有文件 要递归首先需要有方法.递归,即方法自己调用自己.一般在程序中很少使用,但在这个实现中,我们无法知道文件夹的深度,更无法根据深度来实现循环的嵌套. 递归两个重要条件: 终止边界 ...

  6. cmd下载远程linux的文件,Java利用ssh协议实现从远程Linux服务器下载文件和文件夹...

    近来应需求需要,做了服务器之间的文件传输,利用的ssh协议.查阅各种资料博客,基本都是下载文件的方法,找不到下载文件夹得方法.思索多日写了一个下载文件夹的简单方法,可能步骤繁琐,优化不大好.由于jsc ...

  7. C盘下什么文件能删除?

    C盘下什么文件能删除? 以下C盘文件可以删除: 1.C:\Windows下"$NtUninstallQ******"所有文件夹 2.C:\windows\temp目录内的文件 3. ...

  8. linux下修改或删除包含乱码、特殊符号等文件名的文件

    linux环境下,经常见到包含中文命令的文件或文件夹乱码,SFTP连接发现文件正常,命令行不方便操作文件 可以根据Linux 的 inode 来修改或删除 linux 下乱码的文件 一:演示环境模拟创 ...

  9. NT下如何彻底删除Oracle?

    1.Windows 2000+ORACLE 8.1.7 2.ORACLE安装路径为:C:\ORACLE 实现方法: 1. 开始->设置->控制面板->管理工具->服务  停止所 ...

  10. linux路由器文件目录,路由器挂载U盘文件和文件夹删除不掉,linux系统强制删除文件和文件夹命令...

    电脑文件夹删除不掉该怎么解决呢?最近有不少的小伙伴都问小编遇到电脑文件夹删除不掉的情况该要怎么解决,所以不知道怎么解决这个问题的小伙伴,就赶紧来看看小编在下面给你们分享快速删除电脑文件夹的详细操作方法 ...

最新文章

  1. ASP.NET内部原理(HttpHandler和HttpModule)
  2. Ajax发送formdata数据,SpringMVC后台处理
  3. 最近开机老是弹出网银插件的问题
  4. Android系统(244)---Zygote进程的启动流程
  5. css 圆点样式 优惠券样子
  6. python 遍历文件夹
  7. hdfs java 权限管理,HDFS的权限管理
  8. 2018-10-27
  9. 快速突破面试算法之树结构篇
  10. 【读书笔记《Android游戏编程之从零开始》】11.游戏开发基础(SurfaceView 游戏框架、View 和 SurfaceView 的区别)
  11. stata 将数据集变量名称导出_Stata 15 统计数据分析软件
  12. HTML 密码加密方法
  13. 百度飞桨第一课--让人拍案叫绝的创意都是如何诞生的?
  14. Cesium更换地球背景
  15. mysql建立序列相关操作 sequence
  16. Failed to process package ‘cartographer_ros‘ :
  17. 酷睿i7 11800h和r7 5800h参数对比 锐龙r75800h和酷睿i711800h选哪个好
  18. 通过php内核变量绕过,利用PHP内核变量绕过disable_functions(附完整代码)
  19. Ubuntu 笔记本麦克风没有声音解决方法
  20. 2017年,我要怎么学前端

热门文章

  1. 雅客EXCEL(4)-录入数据、超链接阻断、下拉菜单、横列转数列、alt+向下方向键、定位公式
  2. 【STM32】学习笔记RTC日历基础应用问题分析
  3. 【工具】win10修改默认输入法,开机直接启动谷歌输入法
  4. 解决libuuid.so.1 no version information available问题
  5. 用匈牙利算法求二分图的最大匹配
  6. 如何用ASP获取真实IP地址_草根编程
  7. 中国开封菊花花会照片1
  8. Python列表函数方法
  9. 局部线性嵌入(LLE)算法matlab可运行
  10. PAT甲级1140 Look-and-say Sequence:[C++题解]统计连续个数