【发布时间】:2016-06-24 06:28:44
【问题描述】:
我遇到了一个问题,无法识别它。情况是,我有一个活动,我通过单击某个按钮将 JSON 文件保存到存储中。有时文件是空文件(0 KB)。因此,大多数情况下它都按预期工作,但这个 0 KB 的文件让人头疼。根本没有例外。
提前致谢!
BufferedWriter bw = null;
try {
File file = new File(path);
if (!file.exists()) {
file.createNewFile();
}
bw = new BufferedWriter(new FileWriter(file, false));
bw.write(content);
} catch (Exception e) {
Logger.e(mContext,"Write To File",e.toString());
}
finally {
try {
if (bw != null) {
bw.close();
}
}catch (Exception e)
{
Logger.e(mContext,"Write To File",e.toString());
}
}
【问题讨论】:
-
你用调试器单步调试过代码吗?
-
是的,但问题是,千分之一的发生。我写了一个测试用例来测试这个功能,但无法复制这个问题。
-
请确认“content”变量在这些情况下不为空添加:Logger.d(mContext,"content",content);文件为空时检查logcat
-
您是否在应用程序的其他位置使用了完全相同的文件?也许您在某个地方打开文件进行写入并截断文件
-
@Khaledvic:不,我没有地方可以写入同一个文件。
标签: java android filesystems bufferedwriter