1.處理流
? ? ? ? 處理流的典型思路:
????????????????使用處理流包裝節(jié)點流鲸鹦,程序通過處理流來執(zhí)行輸入輸出功能,讓節(jié)點流與底層IO設備和文件交互跷跪。(這樣的好處是我們只需要關(guān)心高級流的操作)
關(guān)于處理流的識別是:只要這個流的參數(shù)是一個已經(jīng)存在的流馋嗜,那么這個流便是處理流,節(jié)點流是直接與物理節(jié)點(底層IO設備和文件)交互的吵瞻!
下面我們給出PrintStream處理流的例子:
2.轉(zhuǎn)換流
? ? ? ? Java提供了2個轉(zhuǎn)換流供我們使用葛菇,InputStreamReader將字節(jié)輸入流轉(zhuǎn)換成字符輸入流,OutputStreamWriter將字節(jié)輸出流轉(zhuǎn)化成字符輸出流橡羞。(關(guān)于為什么只有字節(jié)流轉(zhuǎn)換成字符流的操作眯停,而沒有字符流轉(zhuǎn)換成字節(jié)流的操作,因為字符流字節(jié)流操作更加方便卿泽,對于字節(jié)流莺债,我們可以轉(zhuǎn)化,如果本來都是字符流签夭,就沒必要去轉(zhuǎn)換成字節(jié)流了齐邦,這個問題在以后慢慢的編程中我們會體會到)
下面我們以InputStreamReader為例子:
3.輸入/輸出流體系
位與java.io包下的輸入/輸出流體系
紅色部分為抽象基類,不能創(chuàng)建實例第租。
藍色部分為節(jié)點流侄旬。
綠色部分為處理流。