您的位置:首页 > 编程语言 > Java开发

Java实现批量删除CVS目录

2009-04-20 13:41 537 查看
Java实现批量删除CVS目录


CVS没有SVN的export操作,想要得到纯净的源代码比较麻烦,现用Java编了个小程序可以自动删除源文件夹里的CVS目录,同时记录所有源文件的信息。

import java.io.File;
import java.util.LinkedList;
/**
 * <p>RemoveCVS.java</p>
 * <p>Created on Apr 20, 2009, 9:01:19 AM</p>
 * <p>Copyright (c) 2007-2009. CUCKOO Workgroup, USTC, P.R.China</p>
 * @author Ren Jian
 */
public class RemoveCVS {
    public RemoveCVS(String srcFolderPath) {
        LinkedList folderList = new LinkedList();
        File firstLevel = new File(srcFolderPath);
        File fileList[] = firstLevel.listFiles();
        for (int i = 0; i < fileList.length; i++) {
            if (fileList[i].isDirectory()) {
                if (!fileList[i].getName().equals("CVS")) {
                    folderList.add(fileList[i]);
                } else {
                    removeDir(fileList[i]);
                }
            } else {
                System.out.println(fileList[i].getAbsolutePath());
            }
        }
        File tempFile;
        while (!folderList.isEmpty()) {
            tempFile = (File) folderList.removeFirst();
            if (tempFile.isDirectory()) {
                fileList = tempFile.listFiles();
                if (fileList == null) {
                    continue;
                }
                for (int i = 0; i < fileList.length; i++) {
                    if (fileList[i].isDirectory()) {
                        if (!fileList[i].getName().equals("CVS")) {
                            folderList.add(fileList[i]);
                        } else {
                            removeDir(fileList[i]);
                        }
                    } else {
                        System.out.println(fileList[i].getAbsolutePath());
                    }
                }
            } else {
                System.out.println(tempFile.getAbsolutePath());
            }
        }
    }
    private void removeDir(File cvsFolder) {
        File[] fileList = cvsFolder.listFiles();
        for (int i = 0; i < fileList.length; i++) {
            File file = fileList[i];
            if (file.isDirectory()) {
                removeDir(file);
            } else {
                file.delete();
            }
        }
        cvsFolder.delete();
    }
    public static void main(String[] args) {
        new RemoveCVS("E:/src");
    }
}


把代码中的“CVS”改成“SVN”也可以删除Subversion的目录了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: