2010-06-22 47 views

回答

1

还有就是nu.xom.converters.DOMConverter类,它提供将整个文档XOM到相应的DOM文档的一种方式,但你不能对单个元素做它,可能是因为W3C Element没有父母的话不能存在Document

+0

我猜它的另一种方式 - DOMConverter转换W3C到XOM的。 – HanuAthena 2010-06-22 11:28:43

+0

@HanuAthena:它既可以。有一种方法可以实现XOM-> DOM – skaffman 2010-06-22 11:33:33

+0

对不起,我无法弄清楚是哪种方法 - http://www.xom.nu/apidocs/index.html?nu/xom/converters/DOMConverter.html – HanuAthena 2010-06-22 11:41:08

1

XOM文件:

final nu.xom.Element root = new nu.xom.Element("root"); 
root.appendChild("Hello World!"); 
final nu.xom.Document xomDoc = new nu.xom.Document(root); 

使用DOMConverter:

final DocumentBuilderFactory factory = DocumentBuilderFactory 
       .newInstance(); 
final DocumentBuilder builder = factory.newDocumentBuilder(); 
final DOMImplementation impl = builder.getDOMImplementation(); 
final Document w3cDoc= DOMConverter.convert(xomDoc, impl); 
+0

+1,因为指示如何获取当前需要的DOMImplementation。我不知道为什么XOM本身不会将其作为默认设置。 – Kaitsu 2013-03-13 11:57:07

0
public static org.w3c.dom.Document xomToDom(Element elem) { 
    try { 
     elem = (Element)elem.copy(); 
     return 
     DOMConverter.convert(new Document(elem), 
       DocumentBuilderFactory.newInstance().newDocumentBuilder().getDOMImplementation()); 
    } catch (ParserConfigurationException e) { 
     throw new RuntimeException(e); 
    } 
} 
相关问题