我正在尝试将我的应用程序日志写入文件。我创建了一个方法,将一行附加到该行的末尾。
public static void write2Log(String s){
StringBuilder contents = new StringBuilder();
File root = Environment.getExternalStorageDirectory();
File logFile = new File(root, "testWrite2file.log");
if (root.canWrite()){
try {
BufferedReader input = new BufferedReader(new FileReader(logFile));
String line = null;
while (( line = input.readLine()) != null){
contents.append(line);
// contents.append(System.getProperty("line.separator"));
}
input.close();
FileWriter logWriter = new FileWriter(logFile);
BufferedWriter out = new BufferedWriter(logWriter);
out.write(contents.toString()+"\r\n"+s);////<---HERE IS MY QUESTION
out.close();
}
catch (IOException e) {
Log.e("test", "Could not read/write file " + e.getMessage());
}
}
}
除新字符行外,一切正常。
我试过使用:
\r\n
System.getProperty("line.separator")
newline()
但我总是在一行中得到所有内容:(
有什么想法吗?
最佳答案
试试这个:
FileWriter logWriter = new FileWriter(logFile);
BufferedWriter out = new BufferedWriter(logWriter);
out.write(contents.toString());////<---HERE IS THE CHANGE
out.newLine();
out.write(s);
out.close();
关于android - 新行写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4932402/