来自xml-seq的XML字符串

时间:2013-12-03 13:51:41

标签: xml-parsing clojure

我有一个xml-seq:

({:tag :foo, :attrs nil, :content nil})

我需要将它解析为xml字符串,以便存储在我的内存中:

"<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<foo></foo>"

已经尝试过clojure.data.xml / emit-str但没有成功,有什么提示吗?

1 个答案:

答案 0 :(得分:1)

您正在使用clojure.xml/parse,切换到clojure.data.xml/parse并且您的往返应该有效:

(clojure.data.xml/emit-str
  (xml-seq (clojure.data.xml/parse
             (java.io.ByteArrayInputStream.
               (.getBytes (str "<foo></foo>"))))))
; => "<?xml version=\"1.0\" encoding=\"UTF-8\"?><foo></foo>"