试图跟踪/解析一些日志文件。条目以日期开头,然后可以跨越多行。
这有效,但永远不会看到要归档的新条目。
File inputFile = new File("C:/test.txt");
InputStream is = new FileInputStream(inputFile);
InputStream bis = new BufferedInputStream(is);
//bis.skip(inputFile.length());
Scanner src = new Scanner(bis);
src.useDelimiter("\n2010-05-01 ");
while (true) {
while(src.hasNext()){
System.out.println("[ " + src.next() + " ]");
}
}
Scanner 的 next() 或 hasNext() 似乎没有检测到新的文件条目。
知道我还能如何实现,基本上,带有自定义分隔符的 tail -f 。
好的 - 使用凯利的建议,我正在检查并刷新扫描仪,这很有效。谢谢 !!
如果有人有改进建议请做!
File inputFile = new File("C:/test.txt");
InputStream is = new FileInputStream(inputFile);
InputStream bis = new BufferedInputStream(is);
//bis.skip(inputFile.length());
Scanner src = new Scanner(bis);
src.useDelimiter("\n2010-05-01 ");
while (true) {
while(src.hasNext()){
System.out.println("[ " + src.next() + " ]");
}
Thread.sleep(50);
if(bis.available() > 0){
src = new Scanner(bis);
src.useDelimiter("\n2010-05-01 ");
}
}