java優雅關閉io流

2021-09-11 23:19:08 字數 735 閱讀 9779

教科書關閉的方法是每個都需要判斷是否為空,每個都呼叫close。而且每個都需要在自己的try catch裡面呼叫

如下圖

inputstream is=null;

inputstreamreader isr=null;

bufferedreader read=null;

try finally

}catch (exception e)

try

}catch (exception e)

try

}catch (exception e)

}

但是io物件都來自介面closeable,可以通過這個來關閉。

通過apache的ioutil包提供了良好的方法

如下圖

inputstream is=null;

inputstreamreader isr=null;

bufferedreader read=null;

try finally

檢視源**

public static void closequietly(closeable... closeables) 

}}

public static void closequietly(closeable closeable) 

} catch (ioexception var2)

}

就是遍歷關閉

Java中巢狀的IO流關閉的問題

先看一段 fileoutputstream out1 new fileoutputstream d singleton.txt objectoutputstream out2 new objectoutputstream out1 out1.close 是否需要關閉內層的io流?out2.close...

java的IO流 字元流

reader 是所有的輸入字元流的父類,它是乙個抽象類。reader 中各個類的用途和使用方法基本和inputstream 中的類使用一致。後面會有reader 與inputstream 的對應關係。1 看看幾個常用的實現類 該類從資料來源讀取位元組並將其解碼為使用指定的字符集的字元。inputst...

java基礎之io流

1.四大抽象基類 位元組流 inputstream outputstream 字元流 writer reader 位元組輸出流寫檔案用其子類fileoutputstream類 構造 fileoutputstream file file 傳遞file物件包裝檔案 string name 傳遞字串型別檔...