黑马程序员技术交流社区

标题: io [打印本页]

作者: 凝聚    时间: 2013-10-21 21:11
标题: io
本帖最后由 凝聚 于 2013-10-22 08:12 编辑

IO流使用缓冲区与不使用缓冲区进行文件的读取及复制的区别(BufferedWriter,BufferedReader)

作者: 张运    时间: 2013-10-21 21:42
缓冲区的出现提高了计算机对数据的读写效率。从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取。通常,Reader 所作的每个读取请求都会导致对底层字符或字节流进行相应的读取请求。因此,建议用 BufferedReader 包装所有其 read() 操作可  。换句话说他们的区别就是一个使用了缓冲区提高了性能。一个没有。

作者: Simple_love    时间: 2013-10-21 21:45
io流使用缓冲区就是为了提高效率, 把读取流的一个字节或者字节流的一个一个字节读取,变成一行一行的读取,字符读取流用到方法的ReadLine();
作者: 华行天下    时间: 2013-10-21 23:15
要处理的文件很小的时候这样我们是感觉不出来区别的,缓冲区是个可以重用的内存区,这个主要是用于CPU提高读取文件的效率,而CPU的速度是远远高与内存的,假设你没有这个缓冲区的话,CPU就会要不停的读取文件,当在读取较大的文件时,这样处理效率是不是很低呢?内存速度慢,你这样一个字节一个字节的送的话整体的效率都低了。当你有缓冲的时候CPU在等缓冲区写满时可以处理其它的信息。希望楼主能理解。




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