将NekoHTML ElementNSImpl对象序列化为HTML / XML

时间:2010-10-11 19:10:16

标签: java clojure cyberneko

有没有人知道是否有一种直接的方法来序列化已解析的cyberneko ElementNSImpl对象?

这是我在Clojure中序列化整个DOM(HTMLDocumentImpl对象)的例子。这有效,但我还没有想出如何为dom(ElementNSImpl)中的元素执行此操作。

(defn dom->xml
  [dom]
  (let [sw (java.io.StringWriter.)] 
    (.serialize 
     (org.apache.xml.serialize.XMLSerializer. 
      sw (org.apache.xml.serialize.OutputFormat. dom)) 
     dom)
    (.toString sw)))

谢谢, 罗布

1 个答案:

答案 0 :(得分:1)

这适用于输出XML,但我仍然不知道如何输出HTML:

(defn dom->xml
  "serialize a dom element back to XML text"
  [elem]
  (let [sw (java.io.StringWriter.)]
    (.serialize
     (org.apache.xml.serialize.XMLSerializer. 
      sw (org.apache.xml.serialize.OutputFormat.))
     elem)
    (str sw)))