代碼
package cn.hanquan.rename;
import java.io.File;
public class RenameFile {
public static String SRC = "C:/Users/Bug/Desktop/Blogs/";
public static void visit(File f) {
File[] files = f.listFiles();
for (File t : files) {
String str = t.getName();
if (str.contains("條消息")) {
System.out.println("包含");
String oldStr = t.getPath();
String newstr = str.substring(6, str.length());
System.out.println("原名稱:" + oldStr);
System.out.println("新名稱:" + newstr);
System.out.println(new File(oldStr).renameTo(new File(SRC + newstr)));
}
}
}
public static void main(String[] args) {
visit(new File(SRC));
}
}
坑點
原名稱是完整路徑,新名稱也是完整路徑,代碼寫的有點亂,其實核心就一行:
new File(oldStr).renameTo(new File(newstr));
renameTo()
這個方法是有返回值的,如果文件不存在或者文件名重複,會返回false
,重命名失敗。如果重命名成功,則返回true