IO流知識點整理

2021-06-22 17:04:35 字數 1653 閱讀 4803

io流中有4個底層基類:

位元組流:inputstream, outputstream

字元流:reader,  writer

字元流,其實就是位元組流讀取文字位元組資料後,不直接操作而是 先查指定的編碼表,獲得對應的文字。再對這個文字進行操作。

字串的緩衝區:

緩衝區的出現提高了對資料的讀寫效率,對應類:bufferedreader, bufferedwriter

bufferedreader:  readline();讀取行

bufferedwriter:    newline();換行

readline原理:使用了讀取緩衝區的read方法,將讀取到的字元進行緩衝,並判斷換行標記,將標記籤的緩衝資料變成字串返回。

位元組流:

不僅可以操作字元,還可以操作其他**檔案

不須flush,但是close是必須的。

轉換流:

inputstreamreader:將位元組流轉換成字元流

outputstreamwriter:將字元流轉換成位元組流

什麼時候用轉換流:

1、源或者目的對應的裝置是位元組流,但是操作的確實文字資料,可以使用轉換流作為橋梁,提高對文字操作的便捷

2、一旦操作文字涉及到到具體的指定的編碼表時,必須用轉換流 如:

bufferedreader br=new bufferedreader(new inputstreamreader(system.in));

bufferedwriter bw=new bufferedwriter(new outputstreamwriter(system.out));

filewriter:專門操作文字格式。其實就是轉換流指定了本機預設碼表的體現,而且這個轉換流的子類物件,可以方便操作文字檔案。簡單說,filewriter就是操作檔案的位元組流加上本機預設的編碼表,這是按預設編碼操作檔案的邊界類

filewriter(file file,boolean  flag),如果第二個引數為真,true,則將位元組寫入檔案末尾處,而不是寫入檔案的開始處。

列印流:

提供了列印方法可以對多種型別值進行列印,並保持資料的表現形式

它不拋io異常

printstream:可以接收字串路徑、file物件、位元組輸出流

printwriter:可以接收字串路徑、file物件、位元組輸出流、字元輸出流

構造方法時,傳入true,可以自動重新整理

流操作規律:

1、明確源和目的

源:inputstream,reader

目的:outputstream,writer

2、明確資料是否是純文字資料

源:是純文字:reader

否:inputestream

目的:是純文字:writer

否:outputstream

3、明確具體的裝置

源裝置:硬碟:file

鍵盤:system.in

記憶體:陣列

網路:socket流

源裝置:硬碟:file

鍵盤:system.out

記憶體:陣列

網路:socket流

4、是否需要其他額外功能

高效:用緩衝區,加上buffered

轉換:inputstreamreader,outputstreamwriter

IO流字元流知識點整理

1.字元流是什麼 字元流是可以直接讀寫字元的io流 字元流讀取字元,就要先讀取到位元組資料,然後轉為字元.如果要寫出字元,需要把字元轉為位元組再寫出.2.filereader filereader類的read 方法可以按照字元大小讀取 filereader fr new filereader aaa...

知識點整理

一 標準庫容器和演算法 1.順序容器 與前面類似 2.關聯容器 map和multimap 元素包含key 鍵 和值 value 兩部分 按照鍵對元素排序 map不允許重複元素出現,但multimap可以 set和multliset 是包含已排序物件的關聯容器 只是單純的鍵的集合 set不允許重複鍵出...

知識點整理

一 標準庫容器和演算法 1.順序容器 與前面類似 2.關聯容器 map和multimap 元素包含key 鍵 和值 value 兩部分 按照鍵對元素排序 map不允許重複元素出現,但multimap可以 set和multliset 是包含已排序物件的關聯容器 只是單純的鍵的集合 set不允許重複鍵出...