當我管理IO時,發現問題。我曾經這樣關閉它:如何關閉IO?
try {
// my code
} catch (Exception e) {
// my code
} finally{
if (is != null) {
is.close();
}
}
但是close方法也會拋出異常。如果我有一個以上的IO,我必須關閉所有的IO。所以代碼可能是這樣的:
try {
// my code
} catch (Exception e) {
// my code
} finally{
if (is1 != null) {
is1.close();
}
if(is2 != null{
is2.close();
}
// many IOs
}
如果is1.close()拋出異常,is2,is3不會自行關閉。所以我必須輸入許多try-catch-finally來控制它們。有沒有其他解決問題的方法?
拋出的異常是什麼? –
可能重複的[在finally塊中拋出異常](http://stackoverflow.com/questions/481446/throws-exception-in-finally-blocks) – dmeister