我有一个org.jdom.Document对象,我想使用groovy XMLSlurper进行处理。
我目前正在使用以下代码:
// doc is my org.jdom.Document object
new XMLSlurper().parseText(new XMLOutputter().outputString(doc));
从Document到String的转换需要一些时间。有没有更好的替代方法来避免转换以加速执行?
答案 0 :(得分:0)
您需要将JDOM转换为Groovy XML API支持的中间形式。从JDOM转换为字符串,然后可以使用XmlSlurper解析。
// doc is org.jdom.Document object
def xo = new org.jdom2.output.XMLOutputter()
String xmlContent = xo.outputString(doc)
现在,JDOM doc是一个字符串表示形式,用于使用Groovy XmlSlurper或XmlParser进行解析。
def rootNode = new XmlSlurper().parseText(xmlContent)
println groovy.xml.XmlUtil.serialize(rootNode)