概念:提供一个缓冲区,用于存取系统中数据,提高读写效率。
BufferedOutputStream:高字节输出流。
API:
解析:BufferedOutputStream类是高效字节缓冲输出流类,底管理一个字节数组,通过减少操作系统调用,从而大大提高写入效率。
构造方法:
public class Demo8 {
public static void main(String[] args) throws FileNotFoundException {
//BufferedOutputStream(OutputStream)默认缓冲区大小8192
OutputStream os = new FileOutputStream("文件地址");
BufferedOutputStream out = new BufferedOutputStream(os);
System.out.println(out);//输该对象地址。
//BufferedOutputStream(OutputStream)设置缓冲区大小
BufferedOutputStream out2 = new BufferedOutputStream(os,24);\
System.out.println(out2);
//问题:创建bufferedOutputStream对象如何保存已存在的内容呢?
//答:可以获取OutputStream对象是,设置保留文件内容。
// 将该对象作为参数通过构造方法传递给bufferedOutputSreeam对象。
}
}
构造方法:
public class Demo9 {
public static void main(String[] args) throws FileNotFoundException {
//BufferedOutputStream(OutputStream) 默认缓冲区大小8192
OutputStream os = new FileOutputStream("/Users/jim/Desktop/Work/temp/java0817/bout.txt",true);
BufferedOutputStream out = new BufferedOutputStream(os);
System.out.println(out);//java.io.BufferedOutputStream@610455d6
//BufferedOutputStream(OutputStream,int) 设置缓冲区大小
BufferedOutputStream out2 = new BufferedOutputStream(os,1024);
System.out.println(out2);//java.io.BufferedOutputStream@511d50c0
//问题:创建bufferedOutputStream对象时如何保存已存在文件的内容呢?
//答:可以在获取OutputStream对象时,设置保留文件内容。再将该对象作为参数通过构造方法传递给bufferedOutputStream对象
}
}
功能方法(与OutputStream类功能一致):
public class Demo10 {
public static void main(String[] args) throws IOException {
OutputStream os = new FileOutputStream("文件地址");
BufferedOutputStream out = new BufferedOutputStream(os);
//write()一个一个字节写
//out.write(97);
String s="广东省广州市南沙区";
byte [] bs= s.getBytes();
out.write(bs);
out.flush();
//用于刷新缓冲字符去区中的字节数据,写入到硬盘中。
out.close();
}
}