字符流和字節流的區別和使用

字符流:字符流操作純文本的數據比較方便;

字節流:可用操作任意數據,因爲計算機中任何數據都是以字節流的形式存儲的。

注意:當字符流拷貝非純文本文件和拷貝純文本文件的操作是一樣的,需要先將字節轉換爲字符,轉換字符如果沒有轉換成功就會變成“?”(因爲非純文本中可能含有中文,一箇中文佔2個字節,一個英文佔1個字節),寫出去的時候就會將“?”寫出,這就是有時候我們用字符流拷貝文件時出現亂碼的原因之一。

下圖是字節流和字符流拷貝文件時的區別:

問題1:什麼情況下使用字符流?

答:

        (1)字符流也可以拷貝文本文件,但是不推薦使用,從上圖可以看出,因爲字符流讀取時會把字節轉爲字符,寫出時還要把字符轉回字節,轉換的過程多,如果是大文件,就會影響拷貝文件效率;

        (2)程序需要讀取一段文本,或者需要寫出一段文件的時候可以使用字符流。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章