FileWriter()的两个构造器
- new FileWriter(File/String):覆盖模式,相当于流的指针在首端
- new FileWriter(File/String,true):追加模式,相当于流的指针在尾端
运行代码
String filePath = "d:\\note.txt";
FileWriter fileWriter = null;
char[] chars = {'a', 'b', 'c'};
try {
fileWriter = new FileWriter(filePath);
//写入单个字符
fileWriter.write('a');
//写入数组
fileWriter.write(chars);
} catch (IOException e) {
e.printStackTrace();
} finally {
if (fileWriter != null) {
try {
fileWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
期望结果
abc
由于使用的是FileWriter的无参构造,覆盖。abc把a覆盖了
运行结果
发现并没有覆盖
char[] chars = {'a', 'b', 'c'};
try {
fileWriter = new FileWriter(filePath);
//写入数组
fileWriter.write(chars);
只留下数组运行
结论:覆盖指的是重写运行程序才会覆盖之前的内容
FileWriter使用后,必须要关闭(close)或刷新(flush),才能完成写入