JAVA文件工具类之——文件删除(所有空目录、当前目录中所有目录文件、目录下所有文件)
2017-09-26 19:18
519 查看
//下面的三种文件删除方式极为常用所以积累下来! //1. 删除目录下所有文件 //2. 删除当前目录中所有目录文件 //3. 删除所有空目录 /** * 删除目录下所有文件 * * @param dir * @return */ public static void deleteDir(File dir) { if (dir.isDirectory()) { File[] files = dir.listFiles(); for (File file : files) { deleteFile(file); } } else { dir.delete(); } } /** * 删除当前目录中所有目录文件 * * @param dir */ public static void deleteAllDir(File dir) { File[] files = dir.listFiles(); if (files != null) { for (File file : files) { if (file.isDirectory()) { deleteFile(file); } } } } /** * @Title: delNullDir * @Description: 删除空目录 * @param filePath 文件路径(递归调用时发生改变) * @param initFilePath 文件路径(递归调用时路径不发生改变,用于判断传入的根路径) * @return void 返回类型 * @throws */ public static void delNullDir(String filePath,String initFilePath) { File file=new File(filePath); logger.debug("文件目录路径:"+filePath); if(file.isDirectory()){ logger.debug("文件:"+file.getPath()); File[] files=file.listFiles(); if(files.length==0){ try { String initFileAbsolutePath=(new File(initFilePath)).getAbsolutePath(); if(initFileAbsolutePath.equals(file.getAbsolutePath())){ return; }else{ org.apache.commons.io.FileUtils.deleteDirectory(file); logger.debug("删除文件目录为:"+file.getPath()); String parentPath= file.getParentFile().getAbsolutePath(); delNullDir(parentPath,initFilePath); } 4000 } catch (IOException e) { logger.error(e); } }else{ for(int i=0;i<files.length;i++){ filePath=file.getAbsolutePath()+"/"+files[i].getName(); delNullDir(filePath,initFilePath); } } } }
相关文章推荐
- Java 删除当前目录及其目录下的所有文件
- 删除当前目录下包含在目录的所有.的扩展名的文件
- 删除目录下所有文件和子目录(不包括当前目录)
- java删除一个目录下面的所有文件
- 习题13:编写程序,使用File类实现删除当前目录下的所有文件。
- Python_删除/创建指定目录及其下所有子目录的文件,该文件记录当前文件夹的内容
- java删除一个目录下面的所有文件
- Java中删除文件、删除目录及目录下所有文件
- Java 获取目录所有文件,删除文件。
- 删除指定目录下的所有文件的java类
- java递归删除目录下所有文件包括目录
- Python_删除/创建指定目录及其下所有子目录的文件,该文件记录当前文件夹的内容
- java删除目录下所有子目录及文件
- Java中删除文件、删除目录及目录下所有文件
- 删除当前目录下所有的.o 文件。
- 遍历删除当前目录下所有文件
- 删除指定目录下的所有文件的java类
- bat删除当前目录及其所有子目录中的VC临时文件
- 递归解压当前目录以及子目录下的所有压缩文件,并删除源文件
- 快速便捷地删除当前目录下所有EXCEL文件中的所有公式。