我的应用程序中有一个日志文件,它不断被写入,有时我需要检查它的大小。问题是,无论何时我在另一个线程中快速检查其大小,它有时会返回0,即使其中有明确的数据。Android File.length()在写入时返回0
例如文件大小的输出会是这个样子:(数字字节)
E/DataLogger: Size: 3403
E/DataLogger: Size: 3454
E/DataLogger: Size: 3454
E/DataLogger: Size: 3454
E/DataLogger: Size: 0
E/DataLogger: Size: 3500
E/DataLogger: Size: 3500
E/DataLogger: Size: 3812
我也试图与FileUtils.readFileToByteArray()
,发现相同的行为。为什么这两种方法有时会随机返回0?