java基础 关于转换流
生活随笔
收集整理的這篇文章主要介紹了
java基础 关于转换流
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
轉(zhuǎn)換流有兩種:InputStreamReader:將字節(jié)流轉(zhuǎn)換為字符流 OutputStreamWriter:將字符流轉(zhuǎn)換為字節(jié)流 什么時(shí)候使用轉(zhuǎn)換流?由以下分析: 流對象很多,首先要明確那個(gè)流對象。 通過三點(diǎn)來完成: 1、明確源和目的 源:輸入流。InputStream Reader 目的:輸出流。 OutputStream Writer 2、操作的數(shù)據(jù)是否是純文本。 是:字符流 否:字節(jié)流 3、當(dāng)體系明確后,再明確要使用哪個(gè)具體的對象。 通過設(shè)備來進(jìn)行區(qū)分: 源設(shè)備:內(nèi)存,硬盤,鍵盤 目的設(shè)備:內(nèi)存,硬盤,控制臺 用一個(gè)例子簡單的說明: 將鍵盤錄入的數(shù)據(jù)保存到一個(gè)文件中,輸入“over”時(shí)表示錄入結(jié)束。 詳細(xì)分析: 源:從InputStream Reader中選擇; 因?yàn)槭擎I盤錄入的是純文本,所以使用Reader. 設(shè)備:鍵盤,所以用System.in; 發(fā)現(xiàn)System.in是字節(jié)流的操作,與Reader(字符流)矛盾,這時(shí)就要用到轉(zhuǎn)換流 InputStreamReader 為了提高操作效率,使用緩沖技術(shù),選擇BufferedReader 目的:從 OutputStream Writer中選擇 因?yàn)槭俏谋疚募?#xff0c;所以選擇Writer, 設(shè)備:硬盤上,一個(gè)文件,選擇FileWriter 為了提高操作效率,使用緩沖技術(shù),選擇BufferedWriter import java.io.*; class ReadinFile { public static void main(String[] args)throws IOException //這里問了方便閱讀。先不做異常處理 { BufferedReader bufr=new BufferedReader(new InputStreamReader(System.in)); //將字節(jié)流轉(zhuǎn)換為字符流 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(); } }
轉(zhuǎn)載于:https://www.cnblogs.com/Mrshuang11/p/5759603.html
總結(jié)
以上是生活随笔為你收集整理的java基础 关于转换流的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 面向对象的编程学习笔记
- 下一篇: Tensorflow 处理libsvm格