需求:
最近开发,图片资源是另一个公司同事给的,大约有180张图片,拿到资源后发现,图片名称有些问题:
1)名称首字母大写,例如:Apple.png
2)名称中有空格,例如:Green Leaf.png
3)名称中有特殊符号,例如:Fresh’egg.png
所以,代码撸起来,参考Java实现单个目录下批量修改、重命名文件名:
public static void changeFileName() {
File file = new File("G:/images");
File[] list = file.listFiles();
// 如果目录下文件存在
if (file.exists() && file.isDirectory()) {
for (int i = 0; i < list.length; i++) {
// 取文件名子存入name中
String name = list[i].getName();
// 截取.之前的字符串出来
int preindex = name.indexOf(".");
String prename = name.substring(0,preindex);
//全部转为小写,去掉空格
prename = prename.toLowerCase();
prename = prename.replace(" ", "");
prename = prename.replace("'", "");
// 截取.JPG出来
int sufindex = name.lastIndexOf(".");
String sufname = name.substring(sufindex);
//System.out.println("prename:" + prename + " sufname: " + sufname);
String newName = prename + sufname;
// 重命名
File dest = new File("G:/images" + "/" + newName);
list[i].renameTo(dest);
System.out.println(dest.getName());
}
}
}
默默打开了尘封已久的eclipse,代码跑来,1s后,符合规范的命名出来了。