假设我有一个结构如下的文件:
Line 0:
354858
Some String That Is Important
AA OTHER STUFF SOMESTUFF THAT SHOULD BE IGNOREDLine 1:
543788
Another String That Is Important
AA OTHER STUFF SOMESTUFF THAT SHOULD BE IGNORED
等等……
现在我想获取示例中标记的信息(见灰色背景)。序列 AA 始终存在(并且可以用作中断并跳到下一行),而信息字符串的长度不同。
解析信息的最佳方式是什么?带有 if, then, else
的缓冲读取器或者是否有某种解析器可以告诉您,读取多个 lenth XYZ 然后将所有内容读入字符串 直到找到 AA 然后跳过行。
最佳答案
如果没有更多信息,就不可能告诉您哪个最适合您的问题。
一个解决方案可能是
String s = "354858 Some String That Is Important AA OTHER STUFF SOMESTUFF THAT SHOULD BE IGNORED";
String[] split = s.substring(0, s.indexOf(" AA")).split(" ", 2);
System.out.println("split = " + Arrays.toString(split));
输出
split = [354858, Some String That Is Important]
关于Java顺序解析文件中的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31787337/