去掉当前目录及其所有子目录下的svn目录
2013-01-10 18:18
507 查看
package com.cai.test; import java.io.File; import java.io.FileFilter; /** * 去掉当前目录及其所有子目录下的svn目录 * * @see com.cai.test.去掉svn目录#deleteAllSubFolderByFoldername(File, String) * @see com.cai.test.去掉svn目录#deleteDir(File) * @author dalidong2009@163.com * @date 2013-1-10 18:06:01 * */ public class 去掉svn目录 { private static final String SVN = ".svn"; private static String PARENT_FOLDER_NAME = "D:\\1";; /** * 递归删除当前文件夹下所有命名为foldername指定的子文件夹 * * @param folder * 当前文件夹 * @param foldername */ private static void deleteAllSubFolderByFoldername(File folder, String foldername) throws Exception { File[] subFolderList = folder.listFiles(new FileFilter() { @Override public boolean accept(File pathname) { return pathname.isDirectory(); } }); if (subFolderList != null && subFolderList.length > 0) { for (File subFolder : subFolderList) { if (subFolder.getName().endsWith(foldername)) { // 递归删除svn目录 boolean results = deleteDir(subFolder); if (!results) { throw new Exception("删除\"" + subFolder.getAbsolutePath() + "\"失败"); } } else { // 递归查找svn目录 deleteAllSubFolderByFoldername(subFolder, foldername); } } } } /** * 递归删除目录下的所有文件及子目录下所有文件 * * @param dir * 将要删除的文件目录 * @return boolean Returns "true" if all deletions were successful. If a * deletion fails, the method stops attempting to delete and returns * "false". */ private static boolean deleteDir(File dir) { if (dir.isDirectory()) { String[] children = dir.list(); // 递归删除目录中的子目录下 for (int i = 0; i < children.length; i++) { boolean success = deleteDir(new File(dir, children[i])); if (!success) { return false; } } // 目录此时为空,可以删除 return dir.delete(); } else { // 文件,可以删除 return dir.delete(); } // return dir.delete(); } public static void main(String[] args) throws Exception { // System.out.println(File.separator); File folder = new File(PARENT_FOLDER_NAME); deleteAllSubFolderByFoldername(folder, SVN); // deleteAllSubFolderByFoldername(folder, ACCI); } }
相关文章推荐
- Python_删除/创建指定目录及其下所有子目录的文件,该文件记录当前文件夹的内容
- dos下搜索当前目录及其子目录下的所有特定后缀名的文件并拷贝到新文件夹
- Python_删除/创建指定目录及其下所有子目录的文件,该文件记录当前文件夹的内容
- Linux查找当前目录及其子目录下所有包含指定字符串的文件
- bat删除当前目录及其所有子目录中的VC临时文件
- 查找并删除当前目录及其子目录下的所有重复文件
- 删除当前目录下及其子目录下的所有空文件夹
- 查找并删除当前目录及其子目录下的所有重复文件
- 直接利用grep可以在当前目录及其所有子目录中查找文件吗
- 复制当前目录及其子目录下面的所有的txt文件,如果有文件名相同则重命名为bak01,bak02 ......
- 输出当前目录及其所有子目录名称
- 删除一个目录及其子目录下的所有.svn文件
- Python 读取指定目录及其子目录下所有文件名
- linux 对一个目录及其子目录所有文件添加权限
- Python下获取当前目录中的所有子目录
- Linux: 删除当前目录下的所有__pycache__子目录
- 如何将当前目录及其子目录下的扩展名相同的文件换名成另一个扩展名?
- 查找当前目录下的及其子目录中指定的文件
- linux命令删除当前目录即其子目录下的所有文件夹
- Matlab中添加当前目录及其子目录到path