Java 中流操作的類太多,各種迷惑,, 不得不記 -_-!!
Java 流分類
1:按數據流的方向不同可分爲 輸入流和輸出流。
2:按處理數據單位不同可分爲 字節流和字符流。
3:按功能不同的可分爲 節點流和處理流
IO 包中的所有流類都分別繼承下面的四種抽象流類
類型 | 字節流 | 字符流 |
輸入流 | InputStream | Reader |
輸出流 | OutputStream | Writer |
節點流
可以從一個特定的數據源(節點)讀取數據 比如 讀取某個文件的字符
處理流
連接在已存在的流(如節點流或處理流)之上,通過對數據的處理爲程序提供更爲強大的讀寫功能。
也就是說 凡是在操作時需要某一個 節點流爲基礎後進行讀寫操作的就叫做處理流。
例如:
FileInputStream 【文件輸入的字節流】 他就是一個節點流,因爲是直接操作某個文件,不需要任何的特殊處理。
那麼處理流必須要有一個 像 FileInputStream 之類的流(也可以是處理流) 才能運行,例如 使用 FileInputStream 來讀取某個文件的字節
如果該文件有10000個字節,那就必須讀取 10000次 ,但如果在 基本的節點流中在套一層 處理流 我們就可以直接讀取該文件的一行 或更多。
文件流
FileInputStream
FileOutputStream
FileReader
FileWriter
緩衝流
BufferedInputStream
BufferedOutputStream
BufferedReader
BufferedWriter
數據流
轉換流
print 流
object 流