JAVA BufferedWriter简单讲解

JAVA缓冲流(BufferedWriter)简单讲解
BufferedWriter类是Writer的子类,它为了提高效率,加入了缓冲技术,将字符读取对象作为参数。
BufferedWriter类将一个常量值作为默认缓冲区的大小,它同时也可以通过构造函数来指定大小。
提供了newLine()方法,它使用自己的行分隔符概念,它是由系统自带的属性line.separator定义,并非使用换行符来终止行.

writer会立即将其输出发送到基础字符或字节流,所以在使用BufferedWriter来包装writer的子类可以提高输出的效率

BufferedWriter类中的方法都返回void,write()方法,写入字符串的某一部分,flush()方法刷新该流的缓存。

import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.IOException;
//缓冲区的出现是为了提高流的操作效率而出现的
//所以在创建缓冲区之前,必须先要有流对象
public class BufferedWriterDemo{
	public static void main(String[] args) throws IOException{
	//在这里抛一个IO异常,才能运行
	FileWriter fr =new FileWriter(“E:/buf1.txt”);//创建一个读取流对象和文件相关联
	bufferedWriter bufw = new buffereWriter(fw);//创建buffereWriter类对象
	For(int x=1;x<9;x++){
	  Bufw.write(“abcd”+x);
	  Bufw.newLine();
	  Bufw.flush();
	}
	Bufw.flush();//刷新
	Bufw.clase();//关闭缓冲区
}
}

缓冲区的出现是为了提高流的操作效率而出现的,所以在创建缓冲区之前,必须先要有流对象。

为了提高字符写入流的效率,加入的缓冲技术,在对象里面封装了数组,只要将需要被提高效率的流对象作为参数传递给缓冲区的构造函数即可,记住只要用到缓冲区就要刷新。关闭缓冲区,其实关闭缓冲区就是在关闭缓冲区中的流对象。

在使用bufferedWriter类的write()方法时,数据并没有立刻写入输入流,而是首先进入缓存区中,如果想立刻将缓存区中的数据写入输出流,一定要调用flush()方法。
BufferedWriter在创建类对象时,循环变量数组,将字符串数组中的元素写入到磁盘文件中,将数组中的单个元素以单行的形式写入文件,最后将bufferedWriter流刷新一下,如果刷新那么在最后的保存中将无法保存至buf1.txt中,注意这里bufferedWriter也是需要关闭流的,所以我们加上流关闭方法

在这里插入图片描述
执行成功后,可以发现(我的是E盘)E盘中出现了一个叫buf1.txt的文件,这个文件就是刚刚执行后的文件,打开该文件我们可以看见一共有8行,因为已经定义了它的长度,所以它只能是8行,当然你可以把x<9改一下,将它的大小修改一下,那么它在新增行的时候又会加进几行。

发布了29 篇原创文章 · 获赞 51 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_35426391/article/details/90038649