ApacheライブラリメソッドIOUtils.closeQuitelyがFileChannelでうまく機能することを知りたかったのです。引数としてCloseableが必要であり、FileChannelは階層で実装しているようです。しかし、将来的に問題に直面することはできますか。どんな経験でも共有してください。
質問する
180 次
1 に答える
0
IOUtils.closeQuietly API が示唆するように、つまり double-close を使用すれば問題ないと思います。
FileChannel ch = null;
try {
ch = new FileInputStream("foo.txt").getChannel();
// process
ch.close();
} catch (Exception e) {
// error handling
} finally {
IOUtils.closeQuietly(ch);
}
ただし、Java 7 が利用可能な場合は、リソースを使って試す方がはるかにクリーンな方法です。
于 2013-02-15T06:10:55.553 に答える