Clojures clojure.xml / parse,clojure.zip/xml-zip和clojure.contrib.zip-filter.xml / xml->是从xml中提取值的优秀工具,但是如果我想根据从xml->中学到的内容更改xml(clojure.zip/xml-zip的结果),该怎么办? “查询”并将结果写回xml?
我会预期(clojure.contrib.prxml / prxml(clojure.xml / parse xml-content))吐回xml,但情况并非如此.
更新:实际上,为了发布
XML,最好使用clojure.contrib.lazy-xml / emit,因为clojure.xml / emit目前可能会破坏事情!看下面我的评论.
(现在把这个答案留在这里作为警告)
如果我理解正确,问题的主要重点是将(可能是突变的)XML表示转换成XML文本?
如果是这样,请查看clojure.xml / emit和clojure.xml / emit-element:
user> (with-out-str (xml/emit {:tag :foo :attrs {:bar "quux"}})) "<?xml version='1.0' encoding='UTF-8'?>\n<foo bar='quux'/>\n"
(with-out-str捕获打印的输出并将其包装成一个字符串;由于某种原因,xml / emit打印出xml,所以它在这里很方便,你将要使用emit-element if<?xml version = '1.0'encoding ='UTF-8'?>不是你想要的.)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。