我見過java7 try-with-resources。如果可關閉的資源是params,那麼我們不需要聲明資源。對於這種情況,我們該如何使用此功能?如何使用Java7試用資源功能作爲參數傳遞資源
public static void write(byte[] b, OutputStream os) throws Exception {
try {
os.write(b);
}
catch(Exception e) {
logger.log(Level.INFO, "Exception in writing byte array");
}
finally {
try {
if(os != null) {
os.close();
}
}catch(Exception e) {
logger.log(Level.INFO, "Exception while close the outputstream");
throw e;
}
}
}
附註:關閉流通常是實體t的責任帽子打開了小溪。看起來很奇怪,你接受一個開放流並在你返回之前關閉它。 (如果我想用你的方法將東西寫入文件,然後在你的內容之後添加其他內容?) – aioobe
如果你真的想這樣做,你可以簡單地執行try(OutputStream os2 = os){ ...} – aioobe
在我的情況下,我相信我不會追加內容後。我寫這個代碼作爲一種實用方法。 – RJSV