java基礎 關於轉換流


轉換流有兩種:InputStreamReader:將字節流轉換為字符流 OutputStreamWriter:將字符流轉換為字節流 什么時候使用轉換流?由以下分析: 流對象很多,首先要明確那個流對象。 通過三點來完成: 1、明確源和目的 源:輸入流。InputStream Reader 目的:輸出流。 OutputStream Writer 2、操作的數據是否是純文本。 是:字符流 否:字節流 3、當體系明確后,再明確要使用哪個具體的對象。 通過設備來進行區分: 源設備:內存,硬盤,鍵盤 目的設備:內存,硬盤,控制台 用一個例子簡單的說明: 將鍵盤錄入的數據保存到一個文件中,輸入“over”時表示錄入結束。 詳細分析: 源:從InputStream Reader中選擇; 因為是鍵盤錄入的是純文本,所以使用Reader. 設備:鍵盤,所以用System.in; 發現System.in是字節流的操作,與Reader(字符流)矛盾,這時就要用到轉換流 InputStreamReader 為了提高操作效率,使用緩沖技術,選擇BufferedReader 目的:從 OutputStream Writer中選擇 因為是文本文件,所以選擇Writer, 設備:硬盤上,一個文件,選擇FileWriter 為了提高操作效率,使用緩沖技術,選擇BufferedWriter import java.io.*; class ReadinFile { public static void main(String[] args)throws IOException //這里問了方便閱讀。先不做異常處理 { BufferedReader bufr=new BufferedReader(new InputStreamReader(System.in)); //將字節流轉換為字符流 BufferedWriter bufw=new BufferedWriter(new FileWriter("readin.txt")); String line=null; while((line=bufr.readLine())!=null) { if("over".equals(line)) break; bufw.write(line); bufw.newLine(); } bufw.close(); bufr.close(); } }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM