是否可以在不覆盖以前数据的情况下将文本写入文件?
我一直做的是:
StringBuffer sb = new StringBuffer();
BufferedReader in;
PrintWriter out;
try{
in = new BufferedReader( new FileReader("somefile.txt"));
out = new PrintWriter( new FileWriter("somefile.txt"));
String input = "";
while(input != null){
sb.append(input + "\n");
input = in.readLine();
}
in.close()
out.print(sb.toString());
// now start doing what I want.
这是正确的方法吗?
答案 0 :(得分:2)
查看FileWriter API。有一个接受布尔参数的构造函数 - 您可能希望使用它。
答案 1 :(得分:2)
您可以使用FileWriter
的附加模式来避免覆盖现有数据:
new PrintWriter( new FileWriter("somefile.txt", true));