缓冲字符流与缓冲字节流原理基本相同,前者以字符为单位读写,后者以字节为单位读写
缓冲字符流特有的方式时可以整行读写,效率往往跟高
实例
import java.io.*;
public class Test04 {
public static void main(String[] args) throws IOException {
File file1 = new File("D:\\test\\a\\test01.txt");
File file2 = new File("D:\\test\\a\\test02.txt");
FileReader fileReader = new FileReader(file1); //直接连接源文件,目标文件的字符流
FileWriter fileWriter = new FileWriter(file2);
BufferedReader bufferedReader = new BufferedReader(fileReader); //字符流外包裹的缓冲字符流
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);
long startTime = System.currentTimeMillis(); //记时
String str = bufferedReader.readLine(); //整行读取
while (str!=null){
bufferedWriter.write(str); //整行写入
bufferedWriter.write("\r\n"); //换行
//bufferedWriter.newLine(); //另一种写法
str = bufferedReader.readLine();
}
long endTime = System.currentTimeMillis();
System.out.println(endTime - startTime+"毫秒");
bufferedWriter.close(); //关闭流
bufferedReader.close();
fileWriter.close();
fileReader.close();
}
}