java io 中BufferedReader缓冲区提高效率的问题

哪位大侠可以给我讲一下,BufferedReader所说的使用缓冲区可以提高效率,到底是怎样提高的?详细点,小弟在此谢过

道理很简单,假设你要读取一个文本文件输出到屏幕,一次读一个字节,然后赋值给声明的一个变量,那么需要读取很多次,如果用了BufferedReader,就可以一次把所有的字节都读取到缓冲区,然后再一次性赋值给变量,效率自然就提高了,写文件时也一样,一次写一个字,和一次写1篇文章的区别.
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-08-13
BufferedReader可以一次读一行。。而普通的一次只能读一个字符。。

普通reader读一次就是执行一次那个方法。。相当于我执行一次。。你要执行N次。。

所以效率高。。

并且老是去读硬盘对硬盘伤害很大。。
第2个回答  2010-08-13
io 是耗时的 同时还要处理中断
内存的读写则是很快的
所以理论上 io 读取时,次数越少越好
所以用 BufferedReader 相当于一次读了 很多数据,然后放到内存中方便别人使用。这肯定比 一个 byte 一个 byte 的 读 在效率上提高很多
第3个回答  2010-08-13
javaAPI上都有的

通常,Reader 所作的每个读取请求都会导致对基础字符或字节流进行相应的读取请求。因此,建议用 BufferedReader 包装所有其 read() 操作可能开销很高的 Reader(如 FileReader 和 InputStreamReader)。例如,

BufferedReader in
= new BufferedReader(new FileReader("foo.in"));
将缓冲指定文件的输入。如果没有缓冲,则每次调用 read() 或 readLine() 都会导致从文件中读取字节,并将其转换为字符后返回,而这是极其低效的。

java io 中BufferedReader缓冲区提高效率的问题
道理很简单,假设你要读取一个文本文件输出到屏幕,一次读一个字节,然后赋值给声明的一个变量,那么需要读取很多次,如果用了BufferedReader,就可以一次把所有的字节都读取到缓冲区,然后再一次性赋值给变量,效率自然就提高了,写文件时也一样,一次写一个字,和一次写1篇文章的区别....

Java IO6:字符流进阶及BufferedWriter、BufferedReader
字符流在操作时使用了缓冲区,通过缓冲区再操作文件,而字节流在操作时本身不会用到缓冲区。当关闭字符流时会强制性地将缓冲区中的内容进行输出,而如果没有关闭,缓冲区中的内容是无法输出的。缓冲区是一种特殊内存区域,用于提升程序性能,将一部分数据暂时读入内存区域,以提高读取速度。在字符流的操...

java中的bufferedreader br=new bufferedreader()是什么意思
是用filereader读取一个文件,把这个当参数扔给 bufferedreader 就是需要经过缓冲区了。 用java io的时候尽量使用缓冲区 能提高效率。

java中reader?
BufferedReader通过内部的缓冲区来优化读取操作,它可以一次性读取多个字符,从而减少系统调用的次数,提高读取效率。更重要的是,BufferedReader提供了readLine()方法,该方法能够自动读取并返回输入流中的下一行。这使得BufferedReader在处理文本文件时更加方便,因为它可以自动处理换行符。尽管BufferedReader功能强...

在Java中,BufferedReader 是一个什么类啊,有什么作用啊
1、java.io.BufferedReader和java.io.BufferedWriter类各拥有8192字符的缓冲区。当BufferedReader在读取文本文件时,会先尽量从文件中读入字符数据并置入缓冲区,而之后若使用read()方法,会先从缓冲区中进行读取。如果缓冲区数据不足,才会再从文件中读取,使用BufferedWriter时,写入的数据并不会先输出到目的...

Java中各种的Reader,如BufferedReader,各种的Stream,什么InputStream,Buf...
和字符流(Reader、Write结尾),再分为输入流(InputStream、Reader)和输出流(OutputStream、Write),输入输出相对于内存而言。在读字符的时候用字符流,如文本文件、XML等。在读二进制文件时候用字节流,如RAR、EXE等不是文本以外的文件。Buffered开头的流只是加了缓冲区,为了读写提高效率。

请问这行代码怎么理解呢?BufferedReader 的作用是什么呢?
这句的意思就是通过缓冲区来读数据流,它的好处就是提高读取效率,就像人搬东西一样,每次搬一点不如搬到个小车上一次拉走更高效。

bufferedreader用法区别
在Java 7及之后的版本中,推荐使用try-with-resources语句来自动管理资源的关闭。此外,还需注意设置合适的缓冲区大小,以平衡内存使用和性能。总的来说,BufferedReader是一个强大的工具,尤其适用于处理大量文本数据和提高读取效率的场景。在正确使用时,它可以显著提高应用程序的性能。

理解不了BufferedReader的大小有什么作用?
1、java.io.BufferedReader和java.io.BufferedWriter类各拥有8192字符的缓冲区。当BufferedReader在读取文本文件时,会先尽量从文件中读入字符数据并置入缓冲区,而之后若使用read()方法,会先从缓冲区中进行读取。如果缓冲区数据不足,才会再从文件中读取,使用BufferedWriter时,写入的数据并不会先输出到目的...

BufferedReader reader = new BufferedReader(new FileReader(file...
用filereader读取一个文件,把这个当参数扔给 bufferedreader 就是需要经过缓冲区了。 用java io的时候尽量使用缓冲区 能提高效率。

相似回答