Java批量更改文件名

来源:互联网 发布:酒店数据接口 编辑:程序博客网 时间:2024/06/06 14:25

      更改文件名是我们常做的事,更改一个文件名很容易,可是如果要更改大量有相似点的文件名,且可能位于不同的目录下,就麻烦多了;现分享一段代码,遍历指定目录下的所有文件,并更改文件名

package com.vapy.file;/** *  * @author vapy * */import java.io.File;// 本程序在改名的同时将目录的树状图输出public class ChangeFileName{    /* 这两个变量用于给文件分级  */    private static int level = 0;    private static String levelStr;    private static String fileName;    public static void main(String[] args)    {        File file = new File("E:/movies");        changeName(file, level);    }    public static void changeName(File file, int level)    {        /* 该部分用于给文件分级 */        levelStr = "";        for(int i = 0; i < level; i++)            levelStr += "-";        System.out.println(levelStr + file.getName());        /* 出口条件file是文件而不是目录 */        if(file.isFile())        {            /* 重命名之后,该file所对应的文件就没有了,故若先改名后判断isFile必为false */            if(file.getName().contains("_超清"))            {                fileName = file.getParent() + "\\" + file.getName().replaceAll("\\_超清", "");                file.renameTo(new File(fileName));            }            return;        }        File[] subFile = file.listFiles();        for(File f : subFile)            changeName(f, level+1);    }}

本文代码可在github查看:点击此处

6 0