JAVA中的IO流-字符流缓冲区-BufferedReader(读) 以及 为什么 比FileReader效率高

BufferedReader: 简单来说就是提高字符流读取的效率.

BufferedReader方法FileReader的方法基本一样.
但是效率比FileReader

因为假设 FileReader调用read() 方法 和FileWriter调用writ()方法…
分别读取与写入…(相当于复制一个文本文件)
没有缓冲区…它是先取一个…如何写一个…

而有了缓冲区…它是取一堆…如果写一堆…

打个比喻:

假设厨房蒸包子....

一. 没有缓冲区的就相当于我们去拿一个包子...然后带出去吃,吃完接着又返回厨房拿

二. 有缓冲区的就相当于我们拿一个盘子去装了一盘包子...然后带出去吃...吃完接着重新回到厨房装...

BufferedReader有一个特有方法–readLine();读取一行

例子:
读取在BufferedWriter例子写入的文件

import java.io.*;

public class Demo {
	public static void(String[] args) throws IOException{
		FileReader fr = new FileReader("demo.txt");
		BufferedReader bufr = new BufferedReader(fr);
		
		int ch = 0;
		while((ch = bufr.readLine()) != -1) {
			System.out.printf((char)ch);
		}
	}
}

运行结果:
在这里插入图片描述

发布了87 篇原创文章 · 获赞 43 · 访问量 4001

猜你喜欢

转载自blog.csdn.net/weixin_42947972/article/details/103414402