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基于multiprocessing的多进程创建方法

本文实例讲述了python基于multiprocessing的多进程创建方法。分享给大家供大家参考。具体如下: import multiprocessing import time...

python破解bilibili滑动验证码登录功能

python破解bilibili滑动验证码登录功能

地址:https://passport.bilibili.com/login 左图事完整验证码图,右图是有缺口的验证码图      &n...

react+django清除浏览器缓存的几种方法小结

一. meta方法 打包好的入口index.html头部加入 <META HTTP-EQUIV="pragma" CONTENT="no-cache"> <MET...

利用pandas将numpy数组导出生成excel的实例

利用pandas将numpy数组导出生成excel的实例

上图 代码 # -*- coding: utf-8 -*- """ Created on Sun Jun 18 20:57:34 2017 @author: Bruce Lau...

Python面向对象编程基础解析(一)

1.什么是面向对象 面向对象(oop)是一种抽象的方法来理解这个世界,世间万物都可以抽象成一个对象,一切事物都是由对象构成的。应用在编程中,是一种开发程序的方法,它将对象作为程序的基本...