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

相关文章

Python装饰器入门学习教程(九步学习)

装饰器(decorator)是一种高级Python语法。装饰器可以对一个函数、方法或者类进行加工。在Python中,我们有多种方法对函数和类进行加工,比如在Python闭包中,我们见到函...

python中MySQLdb模块用法实例

本文实例讲述了python中MySQLdb模块用法。分享给大家供大家参考。具体用法分析如下: MySQLdb其实有点像php或asp中连接数据库的一个模式了,只是MySQLdb是针对my...

Python二叉树定义与遍历方法实例分析

本文实例讲述了Python二叉树定义与遍历方法。分享给大家供大家参考,具体如下: 二叉树基本概述: 二叉树是有限个元素的几个,如果为空则为空二叉树,或者有一个结点称之为根节点,分列根节点...

pytorch 获取层权重,对特定层注入hook, 提取中间层输出的方法

如下所示: #获取模型权重 for k, v in model_2.state_dict().iteritems(): print("Layer {}".format(k)) p...

python opencv将表格图片按照表格框线分割和识别

如下小程序为使用python+opencv将表格图片,按照表格进行分割,并识别分割后的子图片中的文字,希望对需要的小伙伴有一些些帮助。具体的实现见如下代码。 # -*- coding...