Android读取空文件,ADB显示该文件不为空

时间:2019-02-25 09:56:16

标签: java android file

我尝试读取Android上另一个应用程序的日志文件。

要读取文件,请使用以下代码:

StringBuilder text = new StringBuilder();

try {
    BufferedReader br = new BufferedReader(new FileReader(file));
    String line;

    while ((line = br.readLine()) != null) {
        text.append(line);
        text.append('\n');
    }
    br.close();
} catch (IOException e) {
    e.printStackTrace();
}

return text.toString();

我有一个循环,它每秒读取一次文件:

while(true) {
    Log.i("FileCheckTask", "Log file size: " + mLogFile.length());
    SleepSeconds(1);
}

尽管在Android Studio设备文件资源管理器中我可以看到该文件具有34.4 KB,但该循环始终在前10个迭代中写入Log file size: 0。上面的函数还返回一个空字符串。

经过10次迭代后,文件大小将被正确报告,并且上述函数将读取正确的内容。

为什么会发生这种情况,如何在不等待约10秒的情况下更快地读取文件?

0 个答案:

没有答案