ホームページ >Java >&#&チュートリアル >ファイルが存在し、アクセス許可がある場合でも、「File.delete()」が False を返すのはなぜですか?
ファイルの存在と権限にもかかわらず File.delete() が False を返す
Q: file.delete() が実行されるという問題が発生しています。 file.exists()、file.canRead()、file.canWrite()、および file.canExecute() がすべて true を返す場合でも、このメソッドは false を返します。この問題の原因は何でしょうか?A: ファイルの存在と権限のチェックが完了しているにもかかわらず、Java のバグが原因でこの問題が発生する可能性があります。これを克服するには、次の手順を組み込むことが重要です。<code class="java">public void deleteFile() { FileOutputStream to = null; FileInputStream in = null; try { in = new FileInputStream(file); to = new FileOutputStream(file); to.write(fileContent.getBytes()); to.flush(); } catch (IOException e) { e.printStackTrace(); } finally { try { in.close(); in = null; to.flush(); to.close(); to = null; System.gc(); } catch (IOException e) { e.printStackTrace(); } } // Attempt to delete file if (file.delete()) { // Delete successful } else { // Handle unsuccessful deletion } }</code>これらの提案に従うことで、この問題を解決でき、ファイル削除プロセスが正常に完了したことを確認してください。
以上がファイルが存在し、アクセス許可がある場合でも、「File.delete()」が False を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。