由于项目测试文件有很多个104个,自己作为实习生基本上经常都会测试,但是一定格式的文件名才能运行测试类 ,就会每次去改文件名中的日期,每次改104个就很烦,所以就写了这个小列子批量改文件名
把昨天的日期20171009改为今天的日期20171010
@Test
/**
* 批量文件部分文件名重命名
*/
public void test2(){
String path="D:\\input\\";
File f=new File(path);
if(!f.isDirectory() ||!f.exists()){
System.out.println(path+" 不存在或者不是目录!!!");
return;
}
File fa[] =f.listFiles();
for(int i=0; i<fa.length;i++){
File fs=fa[i];
if(fs.isDirectory()){
System.out.println(fs.getName()+" 是目录");
}else{
String nameString =fs.getName();
if(nameString.indexOf("20171009")>-1){
nameString=nameString.replaceAll("20171009", "20171010");
if(renameFile(path+fs.getName(),path+nameString)){
System.out.println(fs.getName() + " 重命名为 : "
+ nameString);
}
}
}
}
}
private boolean renameFile(String file, String tofile) {
// TODO Auto-generated method stub
File tobeRenamed =new File(file);
File newFile=new File(tofile);
if(tobeRenamed.renameTo(newFile)){
return true;
}
else{
System.out.println("重命名失败");
return false;
}
}
主要是用到了File类的renameTo()方法