我在那里找到了一堆类似的问题,但我的代码中已经存在所有提议的解决方案,所以......
我在我的应用中从不同的地方调用以下例程:
static private void writeToFile(String data) {
File file = new File("sdcard/output.txt");
if (!file.exists()) {
try {
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
BufferedWriter bw = null;
try {
FileWriter fw = new FileWriter(file, true);
bw = new BufferedWriter(fw);
bw.append(new Date().toString() + " " + data);
bw.newLine();
}
catch (IOException e) {
e.printStackTrace();
}
finally {
try {
if(bw != null) {
bw.close();
}
} catch(Exception e) {
e.printStackTrace();
}
}
}
有时一段时间后字符串会停止添加到文件中。我已经假定它是同步化的东西 - 但是一旦我成功地在调试模式中捕获它并遍历例程 - 每个语句都会执行而没有任何例外。
请告诉我,我的代码有什么问题?