有时候,自己做了一些资源,为了打一点点广告,可以在资源文件名后面加一串自己的域名啥的。这时候就需要批量改文件名。
首先,用下面的代码批量生成了1000个文件
static String folder = "D:/测试";
public static void main(String[] args) {
for (int i=0;i<1000;i++){
String fileName = folder+"/"+i+".txt";
createFiles(fileName);
}
}
static void createFiles(String fileName){
File file = new File(fileName);
if (!file.exists()){
try {
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
}
批量修改
static String folder = "D:/测试";
static void gaiFileName(String dir) {
File file = new File(dir);
File[] files = file.listFiles();
if (Objects.nonNull(files) && files.length > 0) {
for (File file1 : files) {
if (file1.isDirectory()){
continue;
}else {
String fileName = file1.getName();
File parentPath = file1.getParentFile();
String[] params = fileName.split("\\.");
String newName = fileName;//初始值
if (params.length>=2){
newName = params[0] + "@www.chaojilaji.cn." +params[1];
}
File newDir = new File(parentPath + "/" + newName);
file1.renameTo(newDir);
}
}
}
}
//在main函数中直接调用 gaiFileName(folder);
结果如下: