Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android BufferedWriter:已保存空文件。_Java_Android_Filesystems_Bufferedwriter - Fatal编程技术网

Java Android BufferedWriter:已保存空文件。

Java Android BufferedWriter:已保存空文件。,java,android,filesystems,bufferedwriter,Java,Android,Filesystems,Bufferedwriter,我面临一个问题,无法识别它。在这种情况下,我有一个活动,通过单击某个按钮将JSON文件保存到存储器中。有时文件是空文件(0 KB)。因此,大多数情况下它都能正常工作,但这个0 KB的文件让人头疼。毫无例外 提前谢谢 BufferedWriter bw = null; try { File file = new File(path); if (!file.exists()) { file.createNewFile(); } bw = new Bu

我面临一个问题,无法识别它。在这种情况下,我有一个活动,通过单击某个按钮将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());
    }
}

我也有同样的问题。就这样解决了:

fw = new FileWriter(file, false);
bw = new BufferedWriter(fw);
...
bw.flush();
bw.close();
fw.close();

我也有同样的问题。就这样解决了:

fw = new FileWriter(file, false);
bw = new BufferedWriter(fw);
...
bw.flush();
bw.close();
fw.close();

你有没有用调试器检查过代码?是的,但问题是,每1000次就有一次。我编写了一个测试用例来测试此函数,但无法复制该问题。请验证在这些情况下“content”变量不是空的add:Logger.d(mContext,“content”,content);当文件为空时,请检查日志。您是否在应用程序中的其他位置使用确切的文件?也许你在某个地方打开文件进行写入并截断file@Khaledvic:不,我没有写入同一个文件的地方。您是否使用调试器检查过代码?是的,但问题是,每1000次就有一次。我编写了一个测试用例来测试此函数,但无法复制该问题。请验证在这些情况下“content”变量不是空的add:Logger.d(mContext,“content”,content);当文件为空时,请检查日志。您是否在应用程序中的其他位置使用确切的文件?也许你在某个地方打开文件进行写入并截断file@Khaledvic:不,没有我正在写入同一文件的地方。