4

私は2つのファイルを持っています、File src = new File("loc/xyz.mp3")そしてFile dst=new File("loc/xyz1.mp3") 今、私はファイルdstを削除している間にxyz.mp3に名前を変更したいと思いsrcます。どうすればこれを達成できますか?やってみた 、

src.delete();
dst.renameTo(src);

これをアプリのバックグラウンドでAsyncTaskで実行しています。最初に実行すると完全に機能しますが、2回目はクラッシュします。私がこれについてどうやって行けばいいのか助けてください。

4

5 に答える 5

15

やってみてください:

new File("loc/xyz1.mp3").renameTo(new File("loc/xyz.mp3"));

これにより、元のファイルが自動的に上書きされます。この回答はここから取得されました:既存のファイルの名前を変更する方法

于 2013-02-20T00:34:08.283 に答える
0

これら 2 つの delete() と renameTo() は、実行結果に応じて true または false を返します。おそらく、前のステップが成功し、ファイルが指定されたパスに実際に存在するかどうかの条件チェックを追加する必要があります。

于 2013-02-20T00:29:32.517 に答える
0

2 回目の実行dstではファイル システムに存在しない場合if (src.exists() && dst.exists())、エラーを回避するためにコードにチェックを入れる必要があります。

于 2013-02-20T00:27:08.613 に答える