java删除指定目录下所有空文件夹的方法

 更新时间:2016年08月22日 15:18:56   作者:々上善若水々  
这篇文章主要介绍了java删除指定目录下所有空文件夹的方法,涉及java针对文件与目录的遍历及目录删除相关操作技巧,需要的朋友可以参考下

本文实例讲述了java删除指定目录下所有空文件夹的方法。分享给大家供大家参考,具体如下:

package com.func;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
/**
 * 删除指定目录下的所有空文件夹
 *
 * @author zdw
 *
 */
public class FileUtils
{
  List<File> list = new ArrayList<File>();
  // 得到某一目录下的所有文件夹
  public List<File> visitAll(File root)
  {
    File[] dirs = root.listFiles();
    if (dirs != null)
    {
      for (int i = 0; i < dirs.length; i++)
      {
        if (dirs[i].isDirectory())
        {
          System.out.println("name:" + dirs[i].getPath());
          list.add(dirs[i]);
        }
        visitAll(dirs[i]);
      }
    }
    return list;
  }
  /**
   * 删除空的文件夹
   * @param list
   */
  public void removeNullFile(List<File> list)
  {
    for (int i = 0; i < list.size(); i++)
    {
      File temp = list.get(i);
      // 是目录且为空
      if (temp.isDirectory() && temp.listFiles().length <= 0)
      {
        temp.delete();
      }
    }
  }
  /**
   * @param args
   */
  public static void main(String[] args)
  {
    FileUtils m = new FileUtils();
    List<File> list = m.visitAll(new File("e:/aaa"));
    System.out.println(list.size());
    for (int i = 0; i < list.size(); i++)
    {
      System.out.println(list.get(i).getPath());
    }
    m.removeNullFile(list);
    System.out.println("ok");
  }
}

更多关于java相关内容感兴趣的读者可查看本站专题:《Java文件与目录操作技巧汇总》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》和《Java缓存操作技巧汇总

希望本文所述对大家java程序设计有所帮助。

相关文章

  • springboot的SpringPropertyAction事务属性源码解读

    springboot的SpringPropertyAction事务属性源码解读

    这篇文章主要介绍了springboot的SpringPropertyAction事务属性源码解读,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • SpringBoot打印启动时异常堆栈信息详解

    SpringBoot打印启动时异常堆栈信息详解

    在本篇文章里小编给大家整理的是关于SpringBoot打印启动时异常堆栈信息,有需要的朋友们可以学习下。
    2019-11-11
  • Java中的ConcurrentHashMap集合源码解析

    Java中的ConcurrentHashMap集合源码解析

    这篇文章主要介绍了Java中的ConcurrentHashMap集合源码解析,ConcurrentHashMap底层容器和HashMap相同,同样是Node数组+链表+红黑树,不同的是在原来的基础之上使用了Synchronized+CAS来保证线程安全,下面我们来进行源码分析,需要的朋友可以参考下
    2023-11-11
  • java连接mysql数据库学习示例

    java连接mysql数据库学习示例

    这篇文章主要介绍了java连接mysql数据库学习示例,需要的朋友可以参考下
    2014-03-03
  • SpringBoot中干掉Whitelabel Error Page返回自定义内容的实现

    SpringBoot中干掉Whitelabel Error Page返回自定义内容的实现

    这篇文章主要介绍了SpringBoot中干掉Whitelabel Error Page返回自定义内容的实现方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-01-01
  • java多线程应用实现方法

    java多线程应用实现方法

    以前没有写笔记的习惯,现在慢慢的发现及时总结是多么的重要了,呵呵。虽然才大二,但是也快要毕业了,要加油
    2012-11-11
  • 解决@RequestBody部分属性丢失的问题

    解决@RequestBody部分属性丢失的问题

    这篇文章主要介绍了解决@RequestBody部分属性丢失的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • 详解Java正则表达式语法

    详解Java正则表达式语法

    这篇文章主要介绍了Java正则表达式语法,包括常用正则表达式、匹配验证-验证Email是否正确以及字符串中查询字符或者字符串,感兴趣的小伙伴们可以参考一下
    2015-12-12
  • 四步轻松搞定java web每天定时执行任务

    四步轻松搞定java web每天定时执行任务

    本篇文章主要介绍了四步轻松搞定java web每天定时执行任务,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • SpringBoot http请求注解@RestController原理解析

    SpringBoot http请求注解@RestController原理解析

    这篇文章主要介绍了SpringBoot http请求注解@RestController原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01

最新评论