Java:没有Stringbuffer的Regexp

时间:2016-12-17 16:33:27

标签: java regex bufferedreader

我有一个包含多个子文本的大文本文件,每个子文本由<text></text>分隔,如下所示

<text>lots of text</text> <start>lots of text</text> ...

我的目标是阅读文本文件,从每个子文本中提取信息,并每次将这些信息写入三个文件中。

我考虑过使用这段代码来创建一个String

Path bigInputPath = Paths.get("bigfile.txt");
BufferedReader reader = Files.newBufferedReader(bigInputPath, StandardCharsets.UTF_8);
StringBuffer sb = new StringBuffer();
String l;
while ((l = reader.readLine()) != null) {
    sb.append(l);
}
reader.close();

然后使用regexp提取第一个子文本,对其进行处理,然后提取第二个子文本并对其进行处理等...

但是文本文件非常庞大,有更好的方法可以继续吗?

1 个答案:

答案 0 :(得分:0)

由于数据位于标签之间,您可以将其解析为我认为的XML文档。

以下是有关如何执行此操作的示例:https://www.mkyong.com/java/how-to-read-xml-file-in-java-dom-parser/

相关问题