我试图将一个换行符附加到一个已经存在的文件中,但是我尝试过的所有命令都只会附加到第一行。我希望文件中的输出看起来像这样
ROW1
ROW2
private void addToFavToFile(String site){
BufferedWriter writer = null;
File root = Environment.getExternalStorageDirectory();
try{
writer = new BufferedWriter(new FileWriter(Environment.getExternalStorageDirectory()+"/test2.txt",true));
writer.write("ROW1");
writer.newLine();
writer.write("ROW2");
writer.close();
}catch(Exception e){
}我该如何解决这个问题?
发布于 2012-04-23 22:07:57
我已经尝试了下面的代码,它似乎产生了你想要的东西。
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
public class TestNewLines {
public static void main(String[] args) {
TestNewLines testFiles = new TestNewLines();
testFiles.addToFavToFile("");
}
private void addToFavToFile(String site){
BufferedWriter writer = null;
try{
writer = new BufferedWriter(new FileWriter("test.txt",true));
insertEmptyLine(writer);
writer.write("ROW1: " + System.currentTimeMillis());
insertEmptyLine(writer);
writer.write("ROW2: " + System.currentTimeMillis());
insertSeperator(writer);
writer.close();
} catch(Exception e){
}
}
private void insertEmptyLine(BufferedWriter writer) throws IOException {
writer.newLine();
writer.newLine();
}
private void insertSeperator(BufferedWriter writer) throws IOException {
writer.newLine();
writer.write("********************");
}
}为了测试它,我放了一行"This is the first line“。在我的测试文件的开头。运行几次后,输出如下所示:
这是第一行。
ROW1: 1335189657127
ROW2: 1335189657127
ROW1: 1335189658390
ROW2: 1335189658390
ROW1: 1335189665738
ROW2: 1335189665738
ROW1: 1335189679638
ROW2: 1335189679638
正如您从时间戳中看到的,我每次都会在文件的末尾添加新的行。
发布于 2012-04-23 20:51:05
请使用以下代码,
private void addToFavToFile(String site){
BufferedWriter writer = null;
File root = Environment.getExternalStorageDirectory();
try{
writer = new BufferedWriter(new FileWriter(Environment.getExternalStorageDirectory()+"/test2.txt",true));
writer.write("ROW1");
writer.newLine();
writer.write("ROW2");
writer.newLine();
writer.close();
}catch(Exception e){
}发布于 2012-04-23 20:53:36
不使用writer.newLine();
您应该使用writer.write("\\n\\r");
https://stackoverflow.com/questions/10280865
复制相似问题