OutputStream
(1)輸出數據
void write(int b)往流中寫一個字節b
void write(byte b[])往流中寫一個字節數組b
void write(byte b[],int off,int len)把字節數組b中從下標off開始,長度爲len的字節寫入流中
(2)
flush()刷空輸出流,並輸出全部被緩存的字節
因爲某些流支持緩存功能,該方法將把緩存中全部內容強制輸出到流中。
(3)關閉流
close()流操做完畢後必須關閉。java
---------------------------數組
Java IO經過Stream(流)來實現。關於流,能夠理解爲是一種「數據的管道」。管道中流動的東西能夠是基於字節,也能夠是基於字符的等。就好像管道里面能夠流動水,也能夠流動石油同樣。緩存
而對應於流還有一個概念:輸入、輸出設備。這些設備能夠是磁盤文件、鍵盤(輸入設備)、顯示器(輸出設備)、打印機(輸出設備)、網絡套接字等等。網絡
下面,咱們就來了解「流」。dom
Java中定義了兩種類型的流:字節型,和字符型。編碼
字節流:處理字節的輸入和輸出。包括讀寫二進制數據等方面的內容。spa
字符流:處理字符的輸入和輸出。他採用的是Unicode編碼,能夠實現國際化。使用字符流的另一個好處就是:字符流比字節流更有效率。指針
字節流:code
字節流包含兩個頂層抽象類:InputStream和OutputStream。對象
1:字節流的兩個頂層類是抽象類,分別是:InputStream和OutputStream。
2:每一個抽象類都有子類來實現具體的功能,處理不一樣的設備的輸入和輸 出。
下面簡單介紹字節流的幾個經常使用子類:::
字節流類 |
功能簡單介紹 |
DataInputStream |
包含了讀取Java標準數據類型的輸入流 |
DataOutputStream |
包含了寫Java標準數據類型的輸出流 |
ByteArrayInputStream |
從字節數組讀取的輸入流 |
ByteArrayOutputStream |
寫入字節數組的輸出流 |
FileInputStream |
從文件讀入的輸入流 |
FileOutputStream |
寫入文件的輸出流 |
PrintStream |
包含最多見的Print()和Println()的輸出流 |
PushbackInputStream |
返回一個字節到輸入流,主要用於編譯器的實現 |
PipedInputStream |
輸出管道 |
PipedOutputStream |
輸入管道 |
SequenceInputStream |
將n個輸入流聯合起來,一個接一個按必定順序讀取 |
RandomAccessFile |
隨機訪問文件 |
BufferInputStream |
緩衝輸入流 |
BufferOutputStream |
緩衝輸出流 |
FilterInputStream |
實現了InputStream Interface |
FilterOutputStream |
實現了OutputStream Interface |
InputStream |
抽象類,描述流的輸入 |
OutputStream |
抽象類,描述流的輸入 |
抽象類InputStream和OutpurStream定義了實用的方法,其中最主要的是read()和
write()。這兩個方法在InputStream和OutputStream中聲明爲抽象方法,由子流類overwrite實現。
2:每一個抽象類都有子類來實現具體的功能,處理不一樣的設備的輸入和輸 出。