java - 想从特定点开始读取文件

标签 java

我有一个包含日志打印输出的文件,我想读取某些行并从行的中间到行尾的某个点,然后移动到符合条件的下一行。 我想从 RULE EXECUTING 开始阅读到该行的末尾,然后检查它的下一行是否有 RULE EXECUTING 如果没有则跳到下一行如果确实有 RULE EXECUTING 然后从该点复制到该行的末尾.

 FILE SAMPLE

2013-02-14 09:26:20:078 [main] DEBUG sne.ABC.hdhdh.jfjjfj.jkfjfjd.jdsd - RULE EXECUTING --> CMNETSL.hdjjjdlskdnlskd.jgfkdflkdfl_Translation
2013-02-14 09:28:00:312 [main] DEBUG moc.uty.lweifoisd.sfsd.kjfdnkjs.RulesetInvoker  - Rudejgfjkgjf:  After invoking: CMNETSLO
2013-02-14 09:26:20:421 [main] DEBUG sne.ABC.hdhdh.jfjjfj.jkfjfjd.jdsd - RULE EXECUTING --> sne.ABC.hdhdh.jfjjfj.jkfjfjd.jdsd


what I want to get from the line would look like this

RULE EXECUTING --> CMNETSL.hdjjjdlskdnlskd.jgfkdflkdfl_Translation
RULE EXECUTING --> sne.ABC.hdhdh.jfjjfj.jkfjfjd.jdsd

最佳答案

所以,像这样:

BufferedReader br = new BufferedReader(new FileReader("mylog.log"));

String line;
int idx;
while((line = br.getLine()) != null)
  if((idx = line.indexOf("RULE EXECUTING --> ")) != -1)
    System.out.println(line.substring(idx));

我没有在 ide 中尝试过或编译它,但我认为你可能明白了。

关于java - 想从特定点开始读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15532695/

相关文章:

java - 在Java 1.4中使用Apache httpclient读取URL内容

java - shiro + ehcache + 复制 : login and logout not being replicated

java - 改造后参数

java - Grafana 查询使用 prometheus 检索请求计数

java - SAXParser 在遇到无效字符时不会抛出异常

java - 经过Byte Buddy改造后,如何在不加载或保存类的情况下获取类信息?

java - 方法调用与基于反射的事件系统

java - 在 Java 中获取 Windows 充电状态

java - JScrollPane.getViewportBorderBounds() 和 JScrollPane.getViewport() 之间的区别

java - 合并社区并通过其成员找到社区