黑马程序员技术交流社区

标题: 流操作的基本规律 [打印本页]

作者: 淡忘初学者    时间: 2015-8-13 11:29
标题: 流操作的基本规律
以下内容基于张孝祥老师视频课程笔记:
        在我们遇到需要使用流进行数据传输时,最痛苦的就是流对象很多,但不知道该用哪一个流对象。我们可以通过三个明确来完成:
1、明确源和目的:
源---输入流: 字节流  InputStream、字符流 Reader
目的---输出流:字节流 OutputStream、字符流 Writer
2、操作的数据是否为纯文本(用来明确体系:目的和源都要明确一遍)?
是:用字符流     不是:用字节流
注:字节流一般用来操作字节,可用于文本、音频、图片等类型文件;
       而字符流一般用来操作字符,一般用来操作纯文本文件(包括键盘输入(System.in)、控制台输出(System.out)和文本文件)。
3、当体系明确后,再明确要使用哪个具体对象:
     通过设备来区分:源设备:内存、硬盘、键盘
                                目的设备:内存、硬盘、控制台
4、最后看是否需要缓冲区来提供效率:可将相应对象加入相应缓冲区装饰。
在我的理解中,有以下两类缓冲区:
        ①、自定义的缓冲区:定义字节数组:byte[] buf=new byte[1024];  
                                         定义字符数组: char[] buf =new char[1024];
             使用输入流的read方法将数据写入数组缓冲区可起到相应缓冲作用(但如果数据较大不建议使用此缓冲区,防止内存溢出)。
        ②、字节字符流自带缓冲区: 字节流:BuffredInputStream 、BufferedOutputStream
                                                     字符流:BufferedReader 、BufferedWriter、CharArrayReader、CharArrayWriter、StringReader、StringWriter
此帖是视频课内容加上我自身见解所写,有不足之处望各位不吝赐教,谢谢!

作者: 耀阳圣尊    时间: 2015-8-13 14:43
赞一个
作者: 淡忘初学者    时间: 2015-8-24 12:37
耀阳圣尊 发表于 2015-8-13 14:43
赞一个

您是黑马管理员么,为什么我除开前两篇有技术分,后几篇就没有了呢~~实在后几篇也有写得很好的
作者: 哈皮哈皮doge    时间: 2015-8-24 12:47
支持一下
作者: 段燚涛    时间: 2015-8-24 13:04
很好,基本都概况了IO体系的全部内容
作者: 淡忘初学者    时间: 2015-8-25 20:49
段燚涛 发表于 2015-8-24 13:04
很好,基本都概况了IO体系的全部内容

谢谢~~互相加油
作者: 淡忘初学者    时间: 2015-8-25 20:51
哈皮哈皮doge 发表于 2015-8-24 12:47
支持一下

谢谢~~~互相加油~我也是新手




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2