重命名方式主要有两种方式: 1.前后缀方式命名。 reNameFolder(path,prefix,suffix,srcformat,desformat); path批处理文件路径 prefix|前缀添加内容 suffix后缀添加内容 srcformat是否过滤文件的文件格式,null为不过滤 desformat是否重命名文件的文件格式,null为保持原有格式 如原来文件名称:D:/face/life.jpg 重命名后 D:/face/前缀内容life后缀内容.jpg 2.递增方式命名。 reNameFolder(path,start,offset,prefix,suffix,srcformat,desformat); path批处理文件路径 start 开始递增量 offset 递增偏移量 prefix|前缀添加内容 suffix后缀添加内容 srcformat是否过滤文件的文件格式,null为不过滤 desformat是否重命名文件的文件格式,null为保持原有格式 如原来文件名称:D:/face/life.jpg 重命名后 D:/face/前缀内容后缀内容1.jpg 3.更多方式重命名 可以根据提供的参数重载多种方法,如递增时保留原有名称,递增时去掉原有名称,重命名是另开目录保存等等。

import java.io.File;

/**
 * ========================================
 * <p/>
 * 版 权:dou361 版权所有 (C) 2015
 * <p/>
 * 作 者:陈冠明
 * <p/>
 * 个人网站:http://www.dou361.com
 * <p/>
 * 版 本:1.0
 * <p/>
 * 创建日期:2016/1/13
 * <p/>
 * 描 述:
 * <p/>
 * <p/>
 * 修订历史:
 * <p/>
 * ========================================
 */
public class ReNameFolder<span style="font-family: Arial, Helvetica, sans-serif;"> {</span>

    /**
     * @param args
     */

    public static void main(String[] args) {
        System.out.println("---------------------开始操作-------------------");
        reNameFolder(new File("C:\\Users\\Administrator\\Desktop\\Face"), 0, 1, "jjdxm_", "", null, null);
        System.out.println("---------------------操作完成-------------------");

    }


    /**
     * 重命名指定文件夹下的所有文件前后缀方式
     *
     * @param path      路径
     * @param prefix    前缀
     * @param suffix    后缀
     * @param srcformat 原有格式过滤
     * @param desformat 转换格式
     */
    private static void reNameFolder(File path, String prefix, String suffix, String srcformat, String desformat) {
        reNameFolder(path, -1, -1, true, prefix, suffix, srcformat, desformat);
    }


    /**
     * 重命名指定文件夹下的所有文件递增方式
     *
     * @param path      路径
     * @param start     开始位置
     * @param offset    偏移量
     * @param prefix    前缀
     * @param suffix    后缀
     * @param srcformat 原有格式过滤
     * @param desformat 转换格式
     */
    private static void reNameFolder(File path, int start, int offset, String prefix, String suffix, String srcformat, String desformat) {
        reNameFolder(path, start, offset, false, prefix, suffix, srcformat, desformat);
    }

    /**
     * 重命名指定文件夹下的所有文件
     *
     * @param path      路径
     * @param prefix    前缀
     * @param suffix    后缀
     * @param start     起始位置
     * @param offset    偏移量
     * @param srcformat 原有格式过滤
     * @param desformat 转换格式
     */
    private static void reNameFolder(File path, int start, int offset, boolean saveOldName, String prefix, String suffix, String srcformat, String desformat) {
        if (!path.exists()) {
            return;
        }
        if (prefix == null) {
            prefix = "";
        }
        if (suffix == null) {
            suffix = "";
        }
        /** 当前目录 */
        File[] files = path.listFiles();
        for (File file : files) {
            if (file.isDirectory()) {
                reNameFolder(file, start, offset, saveOldName, prefix, suffix, srcformat, desformat);
            } else {
                /** 旧文件名称,去后缀 */
                String oldName;
                /** 新文件名称,完整路径 */
                StringBuilder newName = new StringBuilder();
                /** 新文件后缀 */
                String newfix;
                String fileName = file.getName();
                int index = fileName.lastIndexOf(".");
                /**-------------旧文件名不包含后缀-------------------*/
                if (index == -1) {
                    /** 无后缀文件 */
                    oldName = fileName;
                } else {
                    /** 有后缀文件 */
                    oldName = fileName.substring(0, index);
                }
                /**-------------旧文件名不包含后缀-------------------*/
                /**-------------新文件后缀-------------------*/
                if (desformat == null) {
                    if (index == -1) {
                        newfix = null;
                    } else {
                        newfix = fileName.substring(index + 1);
                    }
                } else {
                    newfix = desformat;
                }
                /**-------------新文件后缀-------------------*/
                newName.append(file.getParent());
                newName.append(File.separator);
                newName.append(prefix);
                if (saveOldName) {
                    newName.append(oldName);
                }
                newName.append(suffix);
                if (start >= 0 && offset > 0) {
                    newName.append(start + "");
                    start = start + offset;
                }
                if (srcformat == null) {
                    /** 没有加过滤,操作所有文件 */

                    if (newfix != null) {
                        newName.append(".");
                        newName.append(newfix);
                    }
                    File newFile = new File(newName.toString());
                    if (newFile.exists()) {
                        /** 如果重命名的文件已经存在,则不重命名 */
                        System.out.println("rename----oldFile----" + oldName + "----newFile----" + newFile.getName() + "----fails");
                    } else {
                        file.renameTo(newFile);
                    }
                } else if (file.getName().endsWith("." + srcformat)) {
                    /** 有加过滤,操作过滤文件 */
                    newName.append(".");
                    newName.append(newfix);
                    File newFile = new File(newName.toString());
                    if (newFile.exists()) {
                        /** 如果重命名的文件已经存在,则不重命名 */
                        System.out.println("rename----oldFile----" + oldName + "----newFile----" + newFile.getName() + "----fails");
                    } else {
                        file.renameTo(newFile);
                    }
                }
            }
        }
    }

}