AdultBird
2015-09-02 03:38
采纳率: 77.8%
浏览 1.8k
已采纳

InputStream的read()方法却和基类相同,怎么理解他的缓冲作用?

字符流缓冲器BufferedReader可以实现正行读取,达到缓冲作用,字节流缓冲器BufferedInputStream的read()方法却和基类相同,怎么理解他的缓冲作用?

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • 隔壁大老王 2015-09-02 05:39
    已采纳

    InputStreamReader是输入字节流接收的是字符流,所谓的输入输出是相对于内存而言的,任何文件都是一个字节一个字节组成的,图片、音乐等。。。。但如果你读的是文本文件,即.txt文件。就用Reader,Reader读的是字符,FileInputStream读的是字节,缓冲就相当于拓宽“道路”的作用,FileInputStream是一条可以过一辆车的路,BufferedReader 就是一条可以三辆车并排过的路,还要注意,Reader不能读取和复制其他类型文件(非.txt)。

    打赏 评论
  • Evankaka 2015-09-02 04:58

    BufferedReader把数据从硬盘拷贝一份到IO内存缓冲区,程序每次需要时,再从IO内存缓冲区拷贝到自己的程序
    进程空间来使用

    打赏 评论
  • CrzayCodess 2015-09-02 05:27

    BufferedReader可以提高读取效率和速度和减少读取次数,它把一部分数据读取到缓冲区,等要读取时一次性读取一堆数据,从而提高读取效率

    打赏 评论
  • 隔壁大老王 2015-09-02 05:39

    InputStreamReader是输入字节流接收的是字符流,所谓的输入输出是相对于内存而言的,任何文件都是一个字节一个字节组成的,图片、音乐等。。。。但如果你读的是文本文件,即.txt文件。就用Reader,Reader读的是字符,FileInputStream读的是字节,缓冲就相当于拓宽“道路”的作用,FileInputStream是一条可以过一辆车的路,BufferedReader 就是一条可以三辆车并排过的路,还要注意,Reader不能读取和复制其他类型文件(非.txt)。

    打赏 评论

相关推荐 更多相似问题