2012-01-17 7 views
2

ファイルの名前を変更してすぐにファイルを開こうとするコードがあります。renameToの後にファイルを開くと断続的にFileNotFoundExceptionがスローされる

Windows XPでは、これは(たぶん)FileNotFoundExceptionをスローします。

renameToの戻り値はtrueです。

これは既知の問題ですか?実際にファイルが表示される前に名前の変更が成功した後、ファイルシステムに遅延が生じる可能性はありますか?

おかげ

+4

対象ファイルシステム(FAT、NTFS、SMB/CIFSなど)とは何ですか? – NPE

+0

ディレクトリ内の実際のファイルをチェックすると、名前が変更されていますか? – Alex

+0

私はファイルシステムを知りません。これはインストールされた製品のカスタマーマシンであり、私が持っているものはすべてログファイルです。 – awinbra

答えて

0

私は、CIFSファイルシステム内のファイルを移動し、Linux上で同じ問題を抱えています。 Google Guavaライブラリの同等のメソッドFiles.move(java.io.File, java.io.File)にこの問題はないようです。 Guavaをより良くする理由は、renameTo()がtrueを返さない場合、ファイルをソースからデスティネーションにバイト単位で明示的にコピーすることです。この回答を書いてみると、GuavaがFile.renameTo()に委譲されたことはわかりませんでしたが、それでもGuavaでは問題はありません。

関連する問題