5
私のオーディオレコーダーのファイルを作成しようとしていますが、このファイルにはランダムな名前が付けられています。これは動作するのが難しいので、ファイルを作成した後、ファイルをより意味のある名前に変更します。File.renameTo()はtrueを返しますが、ファイルの名前が変更されていません
renameTo
がtrueを返しても、ファイルの名前が変更されていません。
ここで何か問題がありますか?
outfile = File.createTempFile(amount + "_alarmsave", ".3gp",
storageDir);
System.out.println("Old file: "+outfile.getAbsolutePath());
File newFile = new File(outfile.getParent(), "alarmsave_" + amount + ".3gp");
System.out.println("new file: "+newFile.getAbsolutePath());
if(outfile.renameTo(newFile)){
System.out.println("Succes! Name changed to: " + outfile.getName());
}else{
System.out.println("failed");
}
LogCat出力:
01-13 18:27:40.264: I/System.out(22913): Old file: /mnt/sdcard/Personal Alarm/13_alarmsave1623959934.3gp
01-13 18:27:40.264: I/System.out(22913): new file: /mnt/sdcard/Personal Alarm/alarmsave_13.3gp
01-13 18:27:40.284: I/System.out(22913): Succes! Name changed to: 13_alarmsave1623959934.3gp
これは...うーん。思考の糧。 オブジェクト自体の名前自体は変わりません。あなたはそうだったけど、その名前はファイルシステム自体に変わった。だから、ありがとう! –
実際のファイルの名前を変更するにはどうすればよいですか。私は新しいファイルパスを印刷するのと同じ動作をしますが、新しいパスを取得しますが、ファイルの名前は変更されませんでしたか?何か案は ? –
'renameTo'は、実際のファイルの名前を変更します。 Fileオブジェクトの名前は変更されません。 – Joni