私のアプリケーションには
と言うファイルone.pdfがあります。私はtwo.pdfと同じディレクトリにファイル名を変更したいと思います。
私は働かないjavaを使ってみました。ファイルの名前を変更する
File f1=new File("E:\\one.pdf");
File f2=new File("E:\\two.pdf");
f1.renameTo(f2);
私のアプリケーションには
と言うファイルone.pdfがあります。私はtwo.pdfと同じディレクトリにファイル名を変更したいと思います。
私は働かないjavaを使ってみました。ファイルの名前を変更する
File f1=new File("E:\\one.pdf");
File f2=new File("E:\\two.pdf");
f1.renameTo(f2);
あなたのコードは、重大なエラーが発生しました:
あなたはFile#renameTo()の結果をチェックしません。 UACが有効になっているか、宛先が無効な場合は、名前の変更に失敗することがあります。
public class Rename {
public static void main(String[] args) {
File f1=new File("c:\\tools\\one.pdf");
File f2=new File("c:\\tools\\two.pdf");
try{
boolean result = f1.renameTo(f2);
System.out.println("worked? " + result);
}catch (Exception e){
e.printStackTrace();
}
}
}
これは、Windowsパスの問題または権限の問題でない限り、私はすぐにコードの問題を表示しません。コメントに記載されているように、例外やエラーの結果を常に表示する必要があります。考慮すべき
ことの一つは、より良い、同じディレクトリ内のファイルの名前を変更するために、既存のFile
オブジェクトを使用することです:
// someExistingFile defined above
File destinationFile = new File(someExistingFile.getParentFile(), "two.pdf");
someExistingFile.renameTo(destinationFile);
これは、既存のファイルのディレクトリを使用して、それに新しいファイルの相対を作成します。 。
どのような種類のエラー? –
どのようなエラーが表示されますか?より具体的にしてください –
同じディレクトリにこの名前のファイルが既にあるかもしれません。(two.pdf) – Kayser