1.原理:
提高读写效率,相当于在InputStream中的read中放入byte[],
2.字节缓冲输出流:
不填入size,则会存储默认的size大小.
BufferOutputStream使用方法:
private static void demo01() throws IOException {
//1.创建一个FileOutputStream对象
FileOutputStream fos=new
FileOutputStream("a.txt");
//2.缓冲流输入
BufferedOutputStream buffer=new BufferedOutputStream(fos);
//3.写入
buffer.write("你好,我的世界".getBytes());
//4.刷新
buffer.flush();
//5.释放资源
buffer.close();
}
直接关闭缓冲流后,字节流会自动关闭
3.字节缓冲输入流:
BufferInputStream使用方法:
public static void main(String[] args) throws IOException {
//1.创建一个FileInputStream对象
FileInputStream in=new
FileInputStream("a.txt");
//2.使用BufferInputStream对象来读
BufferedInputStream input=new BufferedInputStream(in);
// //3.每次循环读一个字节
int len=0;
while ((len=input.read())!=-1){
System.out.println(len);
}
//加速读取
byte[] bytes=new byte[1024];
int len=0;
while ((len=input.read(bytes))!=-1){
System.out.println(len);
System.out.println(new String(bytes,0,len));
}
//关闭资源
input.close();
}
4.字符缓冲输出流:
public static void main(String[] args) throws IOException {
//1.创建字符缓冲输出流对象,构造方法中传递字符输出流
BufferedWriter output=new BufferedWriter (
new FileWriter("a.txt"));
//2.写入数据
for (int i = 0; i <3 ; i++) {
output.write("传智播客");
output.newLine();
}
//3.刷新缓冲
output.flush();
//释放资源
output.close();
}
newLine()换行方法.
5.字符缓冲输入流:
public static void main(String[] args) throws IOException {
//1.创建字符缓冲输入流
BufferedReader br=new BufferedReader(new FileReader("a.txt"));
//2.使用字符缓冲输入流对象中的方法readLine读取文本
String l=br.readLine();
System.out.println(l);
//循环读完
String line;
while ((line=br.readLine())!=null){
System.out.println(line);
}
//3.释放资源
br.close();
}