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

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

相关文章

Django Rest framework频率原理与限制

Django Rest framework频率原理与限制

前言 开发平台的API接口调用需要限制其频率,以节约服务器资源和避免恶意的频繁调用. DRF就为我们提供了一些频率限制的方法. DRF中的版本、认证、权限、频率组件的源码是一个流程,且...

Python、Javascript中的闭包比较

同为脚本语言,python和Javascript具有相似的变量作用域,不像php,函数的内部的所有变量和外部都是隔绝的,也就是说,函数要想处理其外部的数据,必须使用参数把需要处理的数据传...

python版DDOS攻击脚本

本文实例为大家分享了python版DDOS攻击脚本,供大家参考,具体内容如下 于是就找到了我之前收藏的一篇python的文章,是关于ddos攻击的一个脚本,正好今天有空,就实践下了。 附...

利用python和百度地图API实现数据地图标注的方法

利用python和百度地图API实现数据地图标注的方法

如题,先上效果图: 主要分为两大步骤 使用python语句,通过百度地图API,对已知的地名抓取经纬度 使用百度地图API官网的html例程,修改数据部分,实现呈现效果 一、使用pyt...

基于sklearn实现Bagging算法(python)

基于sklearn实现Bagging算法(python)

本文使用的数据类型是数值型,每一个样本6个特征表示,所用的数据如图所示: 图中A,B,C,D,E,F列表示六个特征,G表示样本标签。每一行数据即为一个样本的六个特征和标签。 实现Bag...