免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1184 | 回复: 0
打印 上一主题 下一主题

文件即子文件删除 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2015-07-10 13:31 |只看该作者 |倒序浏览
先简单说明一些基本:(下面所说的文件夹也就是目录,我个人一开始不知道目录是什么,后来才知道目录就是文件夹)。

   1.首先介绍delete()方法的基本用法。

     先创建一个File对象 ,例如: File file = new File("C:/text");其中text是个文件夹;

        ① 当文件夹text为空时(即里面什么都没有),调用file.delete()方法,则会把该文件删除,返回true。

        ② 当文件夹text里面不是空时(里面有文件夹或者文件),调用file.delete()方法时,则不会把该文件删除,返回为false。

        ③ 所以对于文件夹里面存放有东西的时候不能直接删除。

   2.  递归: 简单的理解就是自己调用自己。

   3.  封装一个方法用于删除文件夹即其子文件:
  1. public static void deleteDir(File file) {
  2.         if (file.exists()) {// 判断传递来的文件是否存在,存在时执行下面代码   
  3.             File[] fileList = file.listFiles();                       
  4.             for (File f : fileList) {
  5.                 if (f.isDirectory()) {// 当文件是文件夹时
  6.                     deleteDir(f);     // 这里用到递归
  7.                 } else {
  8.                     System.out.println("删除的文件为:" + f.getName());
  9.                     f.delete();
  10.                 }
  11.             }
  12.             System.out.println("删除的文件夹为:" + file.getName()); //用于删除最外层的空文件夹
  13.             file.delete();
  14.         } else {
  15.             System.out.println("你所删除的文件不存在");
  16.         }
  17.     }
复制代码
4. 在main函数中调用:
  1. 1 public static void main(String[] args) {
  2. 2         File file = new File("C:/text");
  3. 3          deleteDir(file);
  4. 4     }
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP