【好程序員特訓營】IO常用流的功能及特性

IO常用流的功能及特性:

輸入流inputStream:只能從中讀取字節數據,而不能向其寫出數據

輸出流OutputStream:只能向其寫入字節數據,而不能從中讀取數據

輸入流inputStream

1. dataOutputStream創建一個新的數據輸出流,將數據寫入指定基礎輸出流。

2. printStream是一個字節打印流

3. bufferedOutputStream:實現緩衝。

4. FileOutputStream是用於將數據寫入 File 或 FileDescriptor 的輸出流,是用於寫入諸如圖像數據之類的原始字節的流。

5. ObjectOutputStream;用於讀取(重構)對象。

6. pipedOutputStream創建尚未連接到管道輸入流的管道輸出流。

7. byteArrayOutputStream實現了一個輸出流,其中的數據被寫入一個 byte 數組。

輸出流OutputStream

1. pushBackInputStream爲另一個輸入流添加性能,

2. BufferedInputStream爲另一個輸入流添加一些功能

3. lineNumberInputStream是一個輸入流過濾器,它提供跟蹤當前行號的附加功能

4. FileInputStream負責從文件或另一些更特殊的地方讀入字節數據。

5. ObjectInputStream對以前使用 ObjectOutputStream 寫入的基本數據和對象進行反序列化。

7.  SequenceInputStream表示其他輸入流的邏輯串聯。它從輸入流的有序集合開始,並從第一個輸入流開始讀取,直到到達文件末尾,接着從第二個輸入流讀取,依次類推,直到到達包含的最後一個輸入流的文件末尾爲止。

8. StringBufferInputStream創建一個字符串輸入流

9. ByteArrayInputStream創建一個涵內部緩衝區的流

Reader:用於讀取字符流的抽象類。子類必須實現的方法只有 read(char[], int, int) 和 close()

1.FileReader用於處理文件的字符讀取流對象。

2.LineNumberReader使用默認輸入緩衝區的大小創建新的行編號

3.pushBackReader允許將字符推回到流的字符流 reader

4.PipedReader創建傳送的字符輸入流。

5.CharArrayReader實現一個可用作字符輸入流的字符緩衝區

6.StringReader是一個字符串的字符流

7.InputStreamReader字節到字符的橋樑,可從底層輸入流讀取一個或多個字節

8.BufferedReader創建一個緩衝字符輸入流

9.FilterReader用於讀取已過濾的字符流的抽象類,提供一些將所有請求傳遞給所包含的流的默認方法

Writer寫入字符流的抽象類。子類必須實現的方法僅有 write(char[], int, int)flush() 和 close()

1. FileWriter處理文件的字符寫入流對象。

2. BufferedWriter將文本寫入字符輸出流,緩衝各個字符,從而提供單個字符、數組和字符串的高效寫入。

3. CharArrayWriter實現一個可用作 Writer 的字符緩衝區

4. StringWriter一個可以用它回收在字符串緩衝區中的輸出來構造字符串的字符流。 關閉 StringWriter 無效。此類中的方法在關閉該流後仍可被調用,而不會產生任何 IOException。

5. OutputStreamWriter字符到字節的橋樑。

6. PrintWriter負責將字節“組裝”成更有用的數據類型。

7. PipedWriter傳送的字符輸出流。創建一個尚未連接到傳送 reader 的傳送 writer

8. FilterWriter用於寫入已過濾的字符流的抽象類。

序列流,也稱爲合併流——SequenceInputStream:

特點:可以將多個讀取流合併成一個流。這樣操作起來很方便。

原理:其實就是將每一個讀取流對象存儲到一個集合中。最後一個流對象結尾作爲這個流的結尾。

作用:可以用於多個數據的合併。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章