Javaでファイルの名前を変更する
renameTo() を使用すると、たとえば Windows などの任意のオペレーティング システムでファイルの名前を変更できます。ファイルの名前が正常に変更された場合は true を返します。ファイルの名前が変更されていることを確認するために、常に戻り値を確認する必要がありますpackage com.codeurjava.File;Execution:
import java.io.File;
public class RenameFileJava {
public static void main(String[] argv) {
Old File = new File("c:\\test\\ancienFichier.txt");
ファイル nouveau = new File("c:\\test\\nouveauFichier.txt");
if(old.renameTo(new)))
System.out.println("ファイル "+old+" の名前が変更されました。");
else
System.out.println("失敗しました!ファイル "+old+" の名前を変更できませんでした。
}
}
ファイル c:\test\ancienFichier.txt の名前が変更されました。
特定の拡張子を持つ複数のファイルの名前を変更する
次のコードは、ディレクトリに属するファイルのリストの名前を変更します。この例では、c:\test\example がディレクトリで、ファイル名は f1.txt、f2.txt などに変更されます。拡張子がtxtのファイルのみが名前変更されます.package com.codeurjava.File;Runtime:
import java.io.File;
import java.io.IOException;
public class RenameFilesJava {
public static void main(String[] argv) throws IOException {
File folder = new File("c:\\test");
File[] list = folder.listFiles();
for (int i = 0; i < liste.length; i++) {
if (list[i].isFile()) { // ファイルの場合
//現在のファイルを取得する
File f = new File("c:\\test\\"+list[i].getName());
文字列拡張子 = "";
古い文字列 = list[i].getName();
//拡張子がtxt
int index = old.lastIndexOf('.');
if (index > 0) {
extension = old.substring(index+1);
}
if(extension.equals("txt")){
新しい文字列 = "f"+i+".txt";
f.renameTo(new File("c:\\test\\"+new));
System.out.println(old+" 名前変更=>"+新規);
}
else{
System.out.println(ancient+" は txt ファイルではありません);
}
}
}
System.out.println("操作完了!");
}
}
anc1.txt 名前が変更されました =>f0.txt
anc2.txt 名前変更 =>f1.txt
anc3.txt 名前変更 =>f2.txt
img_01.jpg は txt
table.sql は txt
操作が完了しました!
Resources:
https://docs.oracle.com/javase/7/docs/api/java/io/File.html#renameTo(java.io.File)
https://stackoverflow.com/questions/1158777/rename-a-file-using-java