#python #xml #кодировка #строки #python_3x
Пишу программу, которая работает с xml файлами. И возникла проблема с записью символов
в файл. Функция для записи выглядит следующим образом:
def addPost(name, text):
print(name + text)
tree = ET.parse('db.xml')
root = tree.getroot()
post = ET.SubElement(root,'post')
post.set('num', str(getCnt()))
nameElem = ET.SubElement(post, 'name')
nameElem.text = name
textElem = ET.SubElement(post, 'text')
textElem.text = text
tree.write('db.xml')
Проблема заключается в следующем: при записи в файл в нём вместо обычной строки появляются
следующие символы:
Работа
Плюс сам скрипт меняет кодировку xml файла с utf-8 на ansii. Как с этим справиться?
Ответы
Ответ 1
parser = ET.XMLParser(encoding="utf-8") root = ET.parse("file.xml", parser=parser) tree.write("out.xml", encoding="utf-8")
Комментариев нет:
Отправить комментарий