0
XML의 하위 요소에 CDATA를 추가하려고합니다. 그러나 XML은 <
문자를 <
으로 계속 변환합니다.파이썬 하위 요소의 CDATA
여기 CDATA를 사용하여 무언가를 수행하는 some posts을 읽었지만 제대로 작동하지 않는다고는 믿을 수 없습니다. 게다가, 나는 그 예제들을 작동시킬 수 없다.
아래 코드는 python 3.4를 사용하여 간단 해졌습니다. xml.dom 수입 minidom에서 ET 로
수입 xml.etree.cElementTree이
class MyClass():
def __init__(self):
self.xml = None
def generateXML(self):
self.xml = ET.Element("AVXML")
row = ET.SubElement(self.xml, "ROW")
ET.SubElement(row, "DATA").text = "<![CDATA[ <ART_HDR.COMMENT1>.PDF ]]>"
def saveXML(self):
rough_string = ET.tostring(self.xml, 'Windows-1252')
reparsed = minidom.parseString(rough_string)
prettyxml = reparsed.toprettyxml(indent=" ", encoding="Windows-1252")
print(prettyxml)
f = open("filetosave.xml", "wb")
f.write(prettyxml)
f.close()
m = MyClass()
m.generateXML()
m.saveXML()
이 그러나 생성
<DATA><![CDATA[ <ART_HDR.COMMENT1>.PDF ]]></DATA>
대신
<DATA><![CDATA[ <ART_HDR.COMMENT1>.PDF ]]></DATA>