展开全部
在使用BufferedReader和BufferedWriter 要注意:
读不会修改文件,所32313133353236313431303231363533e58685e5aeb931333335313262以同一个file声明多个reader来读,没有问题,
但是写会修改文件,所以在对一个file绑定了writer之后,不能再读了,也不能再声明其它writer到这个file,所以可以说writer是独占的,
如果你调试一下 可以发现,在声明writer之后,file所指定的文件内容会变成空,
所以你将
BufferedWriter writer = new BufferedWriter(new FileWriter(file)); 提到read之前会报NullPointerException
希望能给楼主帮助~~
纯手工打造,还请楼主采纳~~
下面是多个reader一个writer的例子:package test;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class Test {
public static void main(String[] args) {
File file = new File("D:/test.txt");
try {
BufferedReader reader = new BufferedReader(new FileReader(file));
BufferedReader reader2 = new BufferedReader(new FileReader(file));
String line = reader.readLine();
String line2 = reader2.readLine();
System.out.println(line);
System.out.println(line2);
BufferedWriter writer = new BufferedWriter(new FileWriter(file));
writer.write(line);
writer.flush();
reader.close();
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}