0

ここで、期待どおりに動作しないという同様の質問を見てきましたがFile.delete()、これは Java が実際にファイルを作成した方法が少し異なりますが、終了後にファイルを削除しません。

File genFile = new File(parsed);
... sends file data across socket ... 
genFile.delete();

生成されたファイル ( genFile) は、プログラムで以前に生成され、書き込まれましたが、削除しようとすると、ファイルはディレクトリに残ります。エラー メッセージなどは表示されません。

4

4 に答える 4

1

File.delete()エラーについて沈黙しているので、悪いです。

試す

java.nio.file.Files.delete(file.toPath());  // throws IOException

ファイルを削除できない理由が表示される場合があります。(またはそうでないかもしれません:)

于 2013-03-15T05:03:34.620 に答える
0

delete() を試みる前にファイル接続を close() する必要があります

于 2013-03-15T05:07:22.673 に答える
0

追加

genFile.close();

genFile.delete();

ファイルを削除しようとしてもストリームはフラッシュされていないため、最初にストリームを閉じてからファイルを削除してください。

于 2013-03-15T05:10:00.023 に答える
0

Windows または *Unix で実行している場合は、その情報が関連します。

Windows は、アプリケーションによって開かれているファイルを削除しません。削除する前にファイルを閉じてください。

Unix バリアント先に進み、ファイルを削除する (inode を解放する) 必要があります。

于 2013-03-15T05:10:40.680 に答える