我正在尝试将一些数据从我的谷歌应用引擎数据存储输出到 xml,以便 flash 文件可以读取它,
问题是当使用 CDATA 标签时,输出的 xml 包含 <
而不是 <
例如
<name><![CDATA][name]]></name>
这是我的 python,它输出 xml:
doc = Document()
feed = doc.createElement("feed")
doc.appendChild(feed)
tags_element = doc.createElement("names")
feed.appendChild(tags_element)
copen = "<![CDATA]["
cclose = "]]>"
tags = db.GqlQuery("SELECT * FROM Tag ORDER BY date DESC")
for tag in tags:
tag_element = doc.createElement("name")
tags_element.appendChild(tag_element)
the_tag = doc.createTextNode("%s%s%s" % (copen,str(tag.thetag), cclose))
tag_element.appendChild(the_tag)
self.response.headers["Content-Type"] = "application/xml"
self.response.out.write(doc.toprettyxml(indent=" "))
我知道这是一个编码问题,只是似乎无法解决问题,
提前致谢
最佳答案
createCDATASection 方法似乎对我有用。
for tag in tags:
tag_element = doc.createCDATASection(tag.thetag)
tags_element.appendChild(tag_element)
关于python - 停止 minidom 将 < > 转换为 < >,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2780506/