下了一些文件,想批量改名,于是想到用Java写点代码,正好来练习一下,
import java.io.File;
import java.io.FilenameFilter;
import java.io.IOException;
class D{
public static void main(String[] args) throws IOException {
File dirPath = new File("E:\\A\\B");
changeName(dirPath);
}
public static void changeName(File dirPath) {
File[] files = dirPath.listFiles(new FilenameFilter() {//用了文件名过滤器
@Override
public boolean accept(File dir, String name) {
if(name.toLowerCase().endsWith(".exe"))
return true;
return false;
}
});
for(File file : files){
String regex = "(.{2}).{17}(.*)";//将第3到19个字符去掉
String newName = file.getName().replaceAll(regex, "$1$2");
File dest = new File(file.getParentFile(),newName);//不加路径的话,文件会移动到java运行目录中
System.out.println(newName);
file.renameTo(dest);
}
}
}