黑马程序员--java基础------字符流的缓冲区
------- android培训、java培训、期待与您交流! ----------
缓冲区的出现提高了对数据的读写效率。
对应类
BufferedWriter
BufferedReader
缓冲区要结合流才可以使用。
在流的基础上对流的功能进行了增强。
/*缓冲区出现是为了提高流的操作效率而出现的。
所以在创建缓冲区之前,必须先有流对象。
*/
import java.io.*;
Class BufferedWriteDemo
{
public static void main(string[] args)
{
//创建一个流对象,创建一个字符写入流对象
FileWriter fw=new FileWriter("buf.tex");
//为了提高字符写入流效率,加入缓冲技术。
//只需将需要被提高的流对象作为参数传递给缓冲区的构造函数即可。
BufferedWriter bufw=new BufferedWriter(fw);
bufw.write("abcde");
//记住只要用到缓冲区就要记得刷新;
bufw.flush();
其实关闭缓冲区,就是关闭缓冲区中的流对象。
bufw.Close();
fw.close();
///下面是for循环方法接连打印
for(int x=1;x<5;x++)
{
bufw.Write("abcde"+x);
bufw.newline();//换行
bufw.flush();
}
}
}
***********************字符读取缓冲区*************
import java.io.*;
class BufferedReaderDemo
{
public static void main(String[] atgs)
//创建一个读取流对象和文件相关联。
FileReader fr=new FileReader("buf.tex");
//为了提高效率,加入缓冲技术,将字符读取流对象作为参数传递给缓冲对象的够着函数。
BufferedReader bufr=new BufferedReader(fr);
String sl=bufr.readLine();
System.out.println("s1:"+s1);
String s2=bufr.readLine();
System.out.println("s1:"+s2);
bufr.Close();
//因为BufferedReader读到最后为空。用while循环
String line=null;
while(line=bufr.readLine()!=null)
{
System.out.printLn(line);
}
buff.Close();
}