Java IO 使用時具體對象的確定

真正編程時如遇到Io操作時具體流對象使用的確定。

如:是使用字符流還是字節流,是否使用緩衝區等


1. 明確源和目的!

源和目的,也就是輸入和輸出。輸入和輸出分別對應兩個頂層父類,一個字節流一個字符流

源:InputStream Reader

目的:OutputStream Writer

2. 明確文件數據是否爲純文本!

是純文本!輸入或讀取則爲: Reader 

輸出則爲:Writer


不是純文本! 輸入或讀取則爲:InputStream

輸出則爲:OutputStream

到此可以明確具體使用的體系!  是Reader、Writer   還是 InputStream、OutputStream


3. 明確具體的設備!

輸入設備: 

硬盤:File 

鍵盤:System.in

內存:數組

網絡:socket流

輸出設備:

硬盤:File

鍵盤:System.out

內存:數組

網絡:socket流

到此可以明確具體使用的對象。

如純文本文件的複製,則可以確定FileReader FileWriter

4 明確是否需要額外功能。

(1) 是否需要高效

是,Buffer 進行裝飾。


例: 文本文件(.txt)的複製。


可以確定是純文本 所以 確定體系爲 Reader-Writer


複製 。可以確定輸入設備(在此即爲讀取設備)和輸出設備都是 硬盤:File

所以到此可以確定具體使用對象:FileReader---FileWriter


如果需要其他功能 如高效 則進行buffer裝飾。

BufferedReader bufr = new BufferedReader(new FileReader("1.txt"));


對於操作其他類型文件可能還需要其他額外功能,如轉換 InputStreamReader等。


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