一、FileWriter类探索
//读取文件
File file = new File("src/test.txt");
try {
//如果参数为true是在文本内容后追加字符,false是覆盖
FileWriter fileWriter = new FileWriter(file,true);
//调用write方法将字符转二进制然后加入缓冲区
fileWriter.write("aaaaaaaa");
//将缓冲区数据写入到文本,close方法也会调用flush方法
fileWriter.flush();
fileWriter.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
二、BufferedWriter类探索
//读取文件
File file = new File("src/test.txt");
try {
//FileWriter构造方法参数为true是追加,false是覆盖
//BufferedWriter类默认是缓存8192个字符,也可以在构造方法指定缓存大小
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(file,true));
//调用write方法将字符串加入缓存里,如果缓存满了就查码表转二进制后加入缓冲区
bufferedWriter.write("aaaaaaaa");
//将缓冲区数据写入到文本,close方法也会调用flush方法
bufferedWriter.flush();
bufferedWriter.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
三、总结
BufferedWriter类是FileWriter类的装饰类,比FileWriter类多了个缓存机制,性能要高些。
(转载大佬画的图)