码迷,mamicode.com
首页 > 编程语言 > 详细

【转载】JAVA中IO流操作的基本规律总结

时间:2018-01-03 17:31:47      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:数据   输入流   output   控制   一个   bsp   文本文件   amr   保存   

流操作的基本规律:三个明确
1.明确源和目的;
源:输入流即读取流       InputStream,Reader
目的:输出流即写入流    OutputStream, Writer
2.明确操作的数据是否是纯文本文件;
如是果是纯文本文件使用字符流Reader 或Writer,不是纯文本文件 使用字节流InputStream或 OutputStream
3.当体系明确后,在明确具体的适用对象;
通过设备来区分
源设备:内存  硬盘  键盘
目的设备:内存  硬盘   控制台 
***************************************************************************************************
eg1:将一个文本文件的数据复制到另一个文件
分析开始:
源是一个文本文件所以使用字符流,因为要读取区其中的数据,选择Reader
接下来明确使用对象,设备是硬盘上的文件,Reader体系中操作文件的对象时FileReader
      FileReader fr=new FileReader("a.txt");
为了提高读取效率,加入Reader体系之中的缓冲区BufferedReader(装饰类)
BufferedReader br=new BufferedReader(fr);
目的:也是一个文件,因为要向其中写入数据,选择Writer
因为该文件也存在与硬盘之上,所以使用Writer体系中操作文件的对象FileWriter
FileWriter fw=new FileWriter("b.txt");
同理,为了提高读取效率,加入 Writer 体系之中的缓冲区BufferedWriter
Buffered Writer  br=new Buffered Writer r(fw);
若是图片、音频或是视频文件,分析步骤同上,改成相应的字节流即可。
********************************************************************************************************
eg2:将键盘录入的数据保存到文件当中
分析:源是键盘录入( InputStream,Reader),是纯文本(Reader);
设备:键盘,对应的对象System.in
由于体系是Reader,而System是字节流(InputStream),所以要转成字符流,利用Reader体系中的字节转字符的桥梁:InputStreamReader
InputStreamReader isr=new InputStreamReader(System.in);
为了提高效率,使用BufferedReader
BufferedReader br=new BufferedReader(isr); 
目的:也是文本文件,Writer
设备:硬盘上的文件,使用对象FileWriter
FileWriter fw=new FileWriter("a.txt");
同样为了提高效率:Buffered Writer  br=new Buffered Writer r(fw);
如果要将文本中的文件输出到控制台,按照上面的三个明确即可。
 
原文博客:http://blog.csdn.net/u012355386/article/details/22697155
浅显易懂,非常好用

【转载】JAVA中IO流操作的基本规律总结

标签:数据   输入流   output   控制   一个   bsp   文本文件   amr   保存   

原文地址:https://www.cnblogs.com/ViokingJava/p/8184396.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!