in.close()
私はこのコードを見て、なぜfinally block
. の主なポイントtry-with resources
は、それcloses
がresources
正しいということです。
File file = new File(FILE_NAME);
FileInputStream in = null;
try (in = new FileInputStream(file)){
//do something
} catch (final FileNotFoundException e) {
log.log(Level.WARNING, "file not found, " + file.getAbsolutePath(), e);
} catch (final IOException e) {
log.log(Level.WARNING, "cannot access the file for reading", e);
} finally {
if (in != null){
try {
in.close();
} catch (final IOException e) {
log.log(Level.WARNING, "Attempt to close file failed.", e);
}
}
}
Java で try-with-resources を使用して、ファイルを開くことはできても閉じることができないという状況はありますか?