【发布时间】:2015-02-03 16:11:05
【问题描述】:
我正在使用来自发布系统的大型文本文件。其结构如下:
-- File header
-- File Attribute 1
-- File Attribute 2
<xml>File summary</xml>
-- Record header
-- Record attribute 1
<xml>Record1</xml>
-- Record 1 header
-- Record attribute 1
<xml>Record1</xml>
-- Record 2 header
-- Record attribute 1
<xml>Record2</xml>
-- Record n header
-- Record attribute 1
<xml>Recordn</xml>
一个文件中可能有数十万条记录,并且 XML 是一个大型结构一行。行大小可以达到数千个字符。
首先,是的,这太疯狂了——我的第一个任务是回到发布系统并解释 XML 的工作原理! ;) 同时,我需要一种剥离 XML 并构建结构化输出文件的方法:
<xml>
<header/>
<listofrecords>
<record1/>
<record2/>
<recordn/>
</listofrecords>
</xml>
请注意,我对文本标题内容的内容不感兴趣。
我正在努力寻找最快、最易于维护的方法。
我的想法是使用 Java 和 BufferedReader 逐行解析输入文件。在遇到 XML 标记的地方,我读取结束 XML 标记并添加到输出文件结构中。
有没有更快的方法来做到这一点? RegEx 能否帮助识别我需要提取为新格式的文本?
很抱歉,这是一个非常开放的问题,如果它不在 Stack Overflow 的范围内,我会理解的。任何想法都非常感谢,虽然
【问题讨论】:
-
我认为您需要删除正则表达式标签..
-
完成,抱歉。我只是想知道 RegEx 是否会提供一种快速的方法来识别文件中的 XML 行。