使用java对文件批量重命名

有时候从网络上下载的电视剧或者动漫,名字上都会被该网站加上前缀或者后缀,如图:

那么处女座的同学就不同意了,不行,我就是想让它按照我的习惯方式命名!但是呢,一个个修改是不是特别麻烦,如果是上百个呢?如果上千个呢?改到手抽筋都改不完啊!闲来没事写了个小程序,用来对这样统一格式的文件进行批量重命名,当然,必须是这种统一格式的命名方式,如上图所显示的那样,废话不多说,直接贴代码,简单易懂,无甚可讲!

 

public class CHBRenamer {

    public static void main(String[] args) {
        String path = "E:/test"; // 要批量修改的文件所在的目录
        File file = new File(path);
        boolean isDirectory = file.isDirectory();
        if (!isDirectory) { // 如果不是文件夹,就返回
            System.out.println(path + "不是文件夹!");
            return;
        }
        String[] files = file.list();
        File f = null;
        String newFileName = ""; // 新的文件名字
        String oldFileName = ""; // 旧的文件名字
        for (int i = 0; i < files.length; i++) { // 遍历该文件夹下的所有文件
            oldFileName = files[i];
            // 如果不是以特定形式开头的文件,跳过它
            if (!oldFileName.contains("[迅雷下载www.2tu.cc]")) 
                continue;
            
            /**
             * 重新生成修改后的文件名称
             * 我这里统一将"[迅雷下载www.2tu.cc]爱情公寓EP02.03.rmvb"
             * 修改为"爱情公寓第二季-03.rmvb"
             */
            newFileName = "爱情公寓第二季";
            newFileName += oldFileName.substring(oldFileName.indexOf("P")+3, oldFileName.length());
            
            // 将修改后的文件保存在原目录下
            f = new File(path + "/" + oldFileName);
            f.renameTo(new File(path + "/" + newFileName));
        }
    }

}

这是修改后的,怎么样?处女座的同学是不是心里舒坦多了。。。

posted @ 2017-03-21 18:51  我滴个小张张  阅读(1958)  评论(0编辑  收藏  举报