【发布时间】:2016-04-20 23:06:02
【问题描述】:
我有这段代码来检查是否在某个时间发送了日志行。问题是文件指针超过了即使日志行不是我想要的时间(说“稍后”然后搜索时间)。只有当该行最终被带到answer List<String>时,我才想增加文件指针
@Override
public List<String> getForMinuteTimeFrame(LocalTime currentTime) {
List<String> lines = new ArrayList<>();
String line = null;
while ((line = randomAccessFile.readLine()) != null) {
if (fetchTime(line).isEqual(currentTime)) {
lines.add(line);
}
}
return lines;
}
我怎样才能优雅地做到这一点?输入文件非常大(~250 MB),所以我逐行阅读。
【问题讨论】:
标签: java file random-access peek file-pointer