缓冲流能够增强读写文件的能力,也能够高效的读写信息
字节缓冲输入流BufferedInputStream
字节缓冲输出流BufferedOutputStream
字符缓冲输入流:BufferedReader
字符缓冲输出流:BufferedWriter
构造方法:
BufferedReader(Reader in);
BufferedWriter(Writer out);
BufferedReader和BufferedWriter类读写文件的方法:
readLine() BufferedReader流读取文本行
write(String s,int off,int len)BufferedWriter流把字符加粗样式串s写到文本中
newLine();BufferedWriter流向文件写入一个回行符
字节缓冲输出流
public static void main(String[] args) {
try {
//创建字节输出流实例
OutputStream out=new FileOutputStream("L:\
\test.txt");
//根据字节输出流构建字节缓冲流
BufferedOutputStream buf=new BufferedOutputStream
(out);
String data=“好好学习,天天向上”;
buf.write(data.getBytes());//写入缓冲区
buf.flush();//刷新缓冲区,即把内容写入
//关闭流
buf.close();//关闭缓冲流时,也会刷新一次缓冲区
out.close();
} catch (IOException e) {
e.printStackTrace();
}
}
字节缓冲输入流
public static void main(String[] args) {
try {
//创建字节输入流实例
InputStream in=new FileInputStream("L:\
\test.txt");
//根据字节输入流构建字节缓冲流
BufferedInputStream buf=new BufferedInputStream(in);
byte[]bytes=new byte[1024];
//数据读取
int len=-1;
StringBuffer sb=new StringBuffer();
while((len=buf.read(bytes))!=-1)
{
sb.append(new String(bytes,0,len));
}
System.out.println(“内容为:”+sb);
//关闭流
buf.close();
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
字符缓冲输出流
public static void main(String[] args) {
try {
Writer w=new FileWriter(“L:\test.txt”);
//根据字符输出流创建字符缓冲流
BufferedWriter buf=new BufferedWriter(w);
//写入数据
buf.write(“我爱祖国”);
//刷新流
buf.flush();
//关闭流
buf.close();
w.close();
} catch (IOException e) {
e.printStackTrace();
}
}
字符缓冲输入流
public static void main(String[] args) {
try {
Reader r=new FileReader(“L:\test.txt”);
//根据字符输入流创建字符缓冲流
BufferedReader buf=new BufferedReader®;
char [] data=new char[512];
//数据读取 int len=-1;
StringBuilder sb=new StringBuilder();
while((len=buf.read(data))!=-1)
{
sb.append(new String(data,0,len));
}
System.out.println("内容是: "+sb);
//关闭流
buf.close();
r.close();
} catch (IOException e) {
e.printStackTrace();
}
}