IO流詳解(三)轉換流

2021-08-02 21:50:58 字數 753 閱讀 3298

inputstreamreader和outputstreamwriter

思考:我們鍵盤錄入都是位元組流錄入的,一次讀乙個肯定太麻煩了。我們知道有字元流bufferreader有乙個readline方法,如果一次讀一行的話是不是就輕鬆很多了。 但是! 位元組流沒有這個方法 我們想通過 bufferedreader,來裝飾inputstream,很明顯是不行的。

這時候就jdk為我們提供了inputstreamreader,位元組流通向字元流的橋梁。其實字元流的底層就是inputstreamreader。

public class transstreamdemo 

bufw.write(line.touppercase());

bufw.newline();

bufw.flush();

} }}

指定編碼格式

指定編碼格式操作就很簡單的,直接早構造器中加入編碼格式就可以了。網上很多人提到的說io出現亂碼,基本用轉換流都能解決

outputstreamwriter osw = new outputstreamwriter(new fileoutputstream("gbk_3.txt"), "gbk");

inputstreamreader isr = new inputstreamreader(new fileinputstream("gbk_3.txt"), "gbk");

剩下的操作就大同小異了

IO流之轉換流

查閱outputstreamwriter的api介紹,outputstreamwriter 是字元流通向位元組流的橋梁 可使用指定的字元編碼表,將要寫入流中的字元編碼成位元組。它的作用的就是,將字串按照指定的編碼表轉成位元組,在使用位元組流將這些位元組寫出去。public static void w...

IO流(字元流 轉換流)

字元輸入流 public inputstreamreader inputstream in 預設的編碼格式 一般使用這個 public inputstreamreader inputstream in,string charsetname 指定的編碼格式 字元輸入流 位元組輸入流 編碼表 將位元組流...

Java基礎 IO流7 轉換流特有功能

轉換流特有功能 轉換流可以將位元組轉成字元,原因在於,將獲取到的位元組通過查編碼表獲取到指定對應字元。轉換流的最強功能就是基於 位元組流 編碼表 沒有轉換,沒有字元流。發現轉換流有乙個子類就是操作檔案的字元流物件 inputstreamreader filereader outputstreamwr...