`
output
  • 浏览: 16501 次
  • 性别: Icon_minigender_1
  • 来自: 海口
社区版块
存档分类
最新评论

java 批量重命名文件V2

    博客分类:
  • java
阅读更多

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;
        }
    }
}
0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics