每次移植工程,都要删除工程里的.svn目录,从网上找方法,不如直接写一个小程序删除了。记下以备后用。
package com.zznode.io; import java.io.File; /** * @desc: * @since Dec 6, 2013 * @author chaisson * * <p> */ public class DeleteSVNUtil { public static int count = 0; //删除目录下所有.svn文件 public void deleteSVN(String filePath){ System.out.println(filePath); File f = new File(filePath); if(f.isFile()){ return; } File[] files = f.listFiles(); if(files != null && files.length > 0){ for(int i =0;i<files.length;i++){ if(".svn".equals(files[i].getName()) && files[i].isDirectory()){ deleteDirectory(files[i].getAbsolutePath()); //把内部已经清空的.svn目录删除掉 files[i].delete(); count++; } else { deleteSVN(files[i].getAbsolutePath()); } } } } public void deleteDirectory(String filePath){ File f = new File(filePath); if(f.isFile()){ f.delete(); return; } File[] files = f.listFiles(); if(files != null && files.length > 0){ for(int i =0;i<files.length;i++){ if(files[i].isFile()){ files[i].delete(); } else { deleteDirectory(files[i].getAbsolutePath()); } } } else { //把空目录删除掉 f.delete(); } } /** * @desc: How to use this method * @since Dec 6, 2013 * @author chaisson * * <p> * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub DeleteSVNUtil d = new DeleteSVNUtil(); String filePath = "D:\\ptn"; d.deleteSVN(filePath); System.out.println("一共删除了"+count+"个.svn目录"); } }