天天看点

字符缓冲流(BufferedWriter,BufferedReader)

这个连接包含了常用的流------IO流(总篇章)  

字符缓冲流

  • BufferedWriter:将文本写入字符输出流,缓冲字符,以提供单个字符,数字和字符串的高效写入,可以指定缓冲区大小,或者可以接受默认大小。默认值足够大,可用于大多数用途
  • BufferedReader:从字符输出流读取文本,缓冲字符,以提供字符,数组,和行的高效读取,可以指定缓冲区大小,或者可以使用默认的大小。默认值足够大,可用于大多数用途

构造方法

  • 字符缓冲输出流:BufferedWriter(Writer out)
  • 字符缓冲输入流:BufferedReader(Reader in)
字符缓冲流读数据的方式:
  • int read():一次读取一个字符数据
  • int read(char[] cbuf):一次读一个字符数组数据
  • int read(char cbuf[], int off, int len):一次读一个字符数组部分数据
  • String readLine():读一行文字。结果包含行的内容的字符,不包含任何行终止字符,如果流的结尾已经达到,则为null
  • void write(int c):写入一个字符
  • void write(char[] cbuf):写入一个字符数组
  • void write(char[] cbuf,int off,int len):写入字符数组的一部分
  • void write(String str):写入一个字符串
  • void write(String str,int off,int len):写入一个字符串的一部分
  • void newLine():写一行行分隔符,行分隔符字符串由系统属性定义
package com.testIO;

import java.io.*;

/**
 * @author 林高禄
 * @create 2020-05-10-13:11
 */
public class Copy3 {
    public static void main(String[] args) throws IOException{
        BufferedReader br = new BufferedReader(new FileReader("test//src//com//testIO//BufferStreamDemo.java"));
        BufferedWriter bw = new BufferedWriter(new FileWriter("test//src//com//testIO//BufferStreamDemo.txt"));
        String string ;
        while ((string=br.readLine())!= null){
            bw.write(string);
            bw.newLine();
            //bw.flush();
        }
        bw.close();
        br.close();
    }
}