您的位置:首页 > Web前端

JAVA之IO技术BufferedReader,BufferedWriter的缓冲区技术的使用和原理

2014-05-02 13:43 597 查看
BufferedReader:

package ioTest.io2;
/*
* BufferedReader:该缓冲区提供了一个一次读一行的方法
* readline();
*
* 加入缓冲区技术的优点是什么呢?
* 原来我是读一个字符取一个字符,现在变成我读一行字符,将其放在数组中,然后再取。
* 这样是不是提高了效率。实际上BufferedReader类底层实现的原理,就是利用了数组。
*/
import java.io.BufferedReader;
import java.io.FileReader;

public class BufferedReaderDemo {

public static void main(String[] args) throws Exception {
//创建输入流
FileReader in=new FileReader("ioTest1.txt");
//关联BufferedReader
BufferedReader br=new BufferedReader(in);
System.out.println((char)br.read());
System.out.println(br.readLine());
//也可以利用br.readLine()的返回值作为循环的条件。是否为null

}

}


 

BufferedWriter:

package ioTest.io2;

import java.io.BufferedWriter;
import java.io.FileWriter;

/*
* 	字符流的缓冲区技术子类:是为了提高流操作的性能,一般做文件读写操作,都要用缓冲技术。
* 	所以缓冲区的出现是建立的流对象的基础上,这个从构造函数的参数也可以看出来。
*	BufferedWriter,BufferedReader
*/
public class BufferedWriterDemo {

public static void main(String[] args) throws Exception {
//创建一个写入流对象-输出流
FileWriter out=new FileWriter("ioTest1.txt");
BufferedWriter bw= new BufferedWriter(out);
bw.write("abcdefg");
bw.flush();
bw.close();
//关闭了缓冲区对象,实质上就是关闭了流对象,因为本质上还是流对象调用了系统的资源做了文件的写入操作。
//out.close();//这里面无需再关闭流对象。
}

}


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐