Java编程迭代地删除文件夹及其下的所有文件实例

yipeiwu_com7年前Python基础

本文研究的是Java编程迭代地删除文件实例,具体实现代码如下。

实例代码:

public static void main(String[] args) { 
    String filePath = "c:" + File.separator +"b"; 
    File file = new File(filePath); 
    if (file.exists()) { 
      if (file.isFile()) { 
        deleteFile(filePath); 
      } else { 
        deleteDirectory(filePath); 
      } 
    } else { 
      System.err.println("指定的目录或者文件不存在!"); 
    } 
  } 
  //删除单个文件或空的文件夹 
  public static boolean deleteFile(String filePath) { 
    File file = new File(filePath); 
    //如果文件路径对应的文件存在,并且是一个文件,则直接删除 
    if (file.exists() && file.isFile()) { 
      if (file.delete()) { 
        System.err.println("文件" + filePath + "删除成功!"); 
        return true; 
      } else { 
        System.err.println("文件" + filePath + "删除失败!"); 
        return false; 
      } 
    } else { 
      System.err.println("文件" + filePath + "不存在!"); 
      return false; 
    } 
  } 
  //删除文件夹及里面的文件 
  public static boolean deleteDirectory (String dir) { 
    if (!dir.endsWith(File.separator)) { 
      dir = dir + File.separator; 
    } 
    File dirFile = new File(dir); 
    //如果dir对应的问件不存在,或者不是一个目录,则退出 
    if (!dirFile.exists() || !dirFile.isDirectory()) { 
      System.err.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 { 
        deleteDirectory(files[i].getAbsolutePath()); 
      } 
    } 
    //删除当前目录 
    if (dirFile.delete()) { 
      System.err.println("目录" + dir + "删除成功!"); 
      return true; 
    } else { 
      return false; 
    } 
  } 

总结

以上就是本文关于Java编程迭代地删除文件夹及其下的所有文件实例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

numpy排序与集合运算用法示例

numpy排序与集合运算用法示例

这里有numpy数组的相关介绍/post/130657.htm 排序 numpy与python列表内置的方法类似,也可通过sort方法进行排序。 用法如下: In [1]: imp...

django 快速启动数据库客户端程序的方法示例

django 快速启动数据库客户端程序的方法示例

实际工作经历中,免不了有时候需要连接数据库进行问题排查分析的场景,之前一直习惯通过 mysql -uxxx -hxxxx -P1234 ... 这样的方式来启动命令行形式的 MySQL...

python运行其他程序的实现方法

python运行其他程序的实现方法              这里...

Windows下Anaconda的安装和简单使用方法

Windows下Anaconda的安装和简单使用方法

Anaconda is a completely free Python distribution (including for commercial use and redistrib...

ubuntu 18.04 安装opencv3.4.5的教程(图解)

ubuntu 18.04 安装opencv3.4.5的教程(图解)

【写在前面】 这真的是太那个什么了 不管怎么说 做过的东西做个笔记总是好的 花一点点时间做笔记 不然如果哪一天要重新做了 或者哪一天要汇报工作 都不知道该从哪里入手 又要重新来...