读书人

java 批量重命名资料V2

发布时间: 2012-11-08 08:48:11 作者: rapoo

java 批量重命名文件V2

java 批量重命名文件V2

?

?

import java.io.File;public class BatRename {    public static long fileCount = 0;    public static long dirCount = 0;    public static long renamedCount = 0;    public static long deletedCount = 0;        public static void main(String[] args) {        String filePath = "E:\\battest";        String replaceFrom = ".swf";        String replaceTo = ".swf1";        if (Rename(filePath, replaceFrom, replaceTo) == false) {            System.out.println("PROCESS ERROR");        } else {            System.out.println("PROCESSED DONE");        }        System.out.println("total directories : " + dirCount);        System.out.println("total files : " + fileCount);        System.out.println("renamed files' Count : " + renamedCount);        System.out.println("deleted files' Count : " + deletedCount);    }    private static boolean Rename(String path, String replaceFrom,            String replaceTo) {        try {            File fl = new File(path);            String[] files = fl.list();            File f = null;            File renamedFile = null;            String filename = "";            for (String file : files) {                f = new File(fl, file);                if (f.isDirectory()) {                    System.out.println("\n==> directory : " + path                            + java.io.File.separator + file);                    if (Rename(path + java.io.File.separator + file,                            replaceFrom, replaceTo) == false) {                        System.out.print("\tPROCESS ERROR");                    }                    dirCount++;                } else {                    filename = f.getName();                    System.out.print(path + java.io.File.separator + filename);                    if (filename.endsWith(replaceFrom)                            || filename.contains(replaceFrom)) {                        System.out.print("\t\t-->\t\t");                        if ((new File(fl.getAbsolutePath()                                + java.io.File.separator                                + filename.replace(replaceFrom, replaceTo)))                                .exists() == true) {                            f.delete();                            System.out.print("deleted");                            deletedCount++;                        } else {                            renamedFile = new File(fl.getAbsolutePath()                                    + java.io.File.separator                                    + filename.replace(replaceFrom, replaceTo));                            f.renameTo(renamedFile);                            System.out.print(path + java.io.File.separator                                    + renamedFile.getName());                            renamedCount++;                        }                    }                    System.out.println();                    fileCount++;                }            }            return true;        } catch (Exception ex) {            ex.printStackTrace();            return false;        }    }}

读书人网 >编程

热点推荐