在我正在处理的java应用程序中,需要使用现有的XML,然后对该xml进行更改并将原始xml和新的xml作为输出。
您推荐使用哪种解析器,以便使用最少的内存?我可以在哪里做到 -
(a)轻松获取xml的一部分,并将其插入到同一XML中的另一个位置?
(b)更改xml部分中的某些属性。
答案 0 :(得分:1)
如果文档很大,您可以查看SAX,否则只需使用像dom4j这样的DOM解析器。
使用任何DOM解析器,您都可以复制节点并将其附加到文档树中的其他位置。
例如,使用dom4j,您可以使用Element.createCopy
复制元素,并将其添加到其他位置。
答案 1 :(得分:0)
这里有一个庞大的Java Parsers列表供您选择。他们中的大多数都有能力做你需要的 - XML解析,选择/过滤/复制/移动节点,修改属性,XML文件读/写功能等。每个都有自己的优点缺点 - 主要的选择标准是速度和性能:
JDOM
XMLBeans
Xerces
Apache Betwixt
XStream
StAX
JAXB
XP Parser
kXML
JiBX: Binding XML to Java Code
woodstox
VTD-XML 1.5
Zeus
Skaringa
Lycia
Piccolo XML Parser
NanoXML
NekoPull
XOM
dom4j
Jakarta Commons Digester
JOX
KBML
X2JB
Staxmate