Java———IO流(一)
阿新 • • 發佈:2019-02-18
一、Java IO流簡介
1.IO流繼承關係圖
2.概論
- Java的IO是建立在流之上的。輸入流讀取資料,輸出流寫入資料
- 過濾器流(裝飾流)可以串鏈到基礎流上。可以修改資料,或者提供額外的方法,比如將資料轉換為其他格式
- 閱讀器和書寫器可以串鏈到基礎流上。允許讀寫文字(即字元)而不是位元組。可以處理字元編碼,字符集等問題。
- 流是同步的
二、輸入流(InputStream)
1.定義
對應閱讀器,是從某種特定介質中讀取資料
2.基本方法
方法名 | 作用 |
---|---|
abstract int read() | 讀取1個位元組 |
int read(byte[] input) |
按位元組讀取全部,原始碼實際是呼叫下面的方法 |
int read(byte[] input, int offset, int length) | 按位元組讀取部分,確定開始的點和讀取多長 |
long skip(long n) | 跳過 |
int available() | 返回一個實際可讀位元組數,總大小 |
void close() | 關閉流 |
三、輸出流(OutputStream)
1.定義
對應書寫器,是向某種特定介質寫入資料
2.基本方法
方法名 | 作用 |
---|---|
abstract void write(int b) | 寫入1個位元組 |
int write(byte[] data) | 按位元組全部寫入,原始碼實際是呼叫下面的方法 |
int write(byte[] data, int offset, int length) | 按位元組寫入部分,確定開始的點和寫入多長 |
long flush() | 重新整理 |
void close() | 關閉流 |
緩衝
- 原始碼上,緩衝是把流先存在陣列中,等陣列滿了才傳送流
- 這樣做的好處,
四、過濾器流
五、閱讀器(Reader)
1.定義
對應輸入流
六、書寫器(Writer)
1.定義
對應輸入流