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

相关文章

Ubuntu下安装PyV8

这几天需要在使用PyV8来进行python与javascript的交互。之前在window下安装过,直接使用的exe安装的,也没有遇到什么问题。 结果这次在Ubuntu安装遇到了不少坑-...

对Python3之方法的覆盖与super函数详解

对Python3之方法的覆盖与super函数详解

#覆盖 覆盖:在继承关系中,子类实现了与基类同名的方法,在子类的实例调用该方法时,实例调用的是子类的覆盖版本。 通俗的讲,就是小明继承了他⑧的自行车,经过自己的改装,成了电动车,那么小明...

python迭代dict的key和value的方法

迭代dict的key和value 我们了解了如何迭代 dict 的key和value,那么,在一个 for 循环中,能否同时迭代 key和value?答案是肯定的。 首先,我们看看 di...

分析经典Python开发工程师面试题

你知道吗?实际上Python早在20世纪90年代初就已经诞生,可是火爆时间却并不长,就小编本人来说,也是前几年才了解到它。据统计,目前Python开发人员的薪资待遇为10K以上,这样的诱...

python hough变换检测直线的实现方法

python hough变换检测直线的实现方法

1 原理  2 检测步骤 将参数空间(ρ,θ) 量化成m*n(m为ρ的等份数,n为θ的等份数)个单元,并设置累加器矩阵,初始值为0; 对图像边界上的每一个点(x,y)带入ρ=...