【发布时间】:2011-08-11 22:37:15
【问题描述】:
我正在尝试从一个伪 XML 格式的文件中解析文本。当它具有以下结构时,我可以从中获取 DOM 文档:
<product>
<product_id>234567</product_id>
<description>abc</description>
</product>
我遇到的问题发生在结构类似于以下时:
<product>
<product_id>234567</product_id>
<description>abc</description>
<quantity 1:2>
<version>1.1</version>
</quantity 1:2>
<version>1.2</version>
<quantity 2:2>
</quantity 2:2>
</product>
由于<quantity 1:2>中的空格,它会生成以下异常:
org.xml.sax.SAXParseException:[Fatal Error] :1:167: Element type " quantity " must be followed by either attribute specifications, ">" or "/>"
我可以通过用下划线替换空格来解决这个问题。问题是结构的大小可能不同,并且包含多个具有相同格式的子节点 (<node 1:x>),并且文件可能包含数百个要解析的结构。是否有可用的类可以解析这样的文本并返回树状对象?
【问题讨论】: