现在的位置: 首页 > 综合 > 正文

删除.svn目录

2014年01月09日 ⁄ 综合 ⁄ 共 1183字 ⁄ 字号 评论关闭

每次移植工程,都要删除工程里的.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目录");
	}

}

 

 

抱歉!评论已关闭.