У меня есть файл без XML, в который я хотел бы добавить раздел XML. Файл создается другим приложением, и я хочу создать и добавить к нему раздел xml (в середине файла). Затем мне нужно иметь возможность прочитать раздел xml как обычный xml. Я не уверен, что это возможно.Чтение XML из существующего не-XML-файла
Код написан на python.
settings = XmlReaderSettings()
settings.DtdProcessing = DtdProcessing.Ignore
reader = XmlReader.Create(DXFfile, settings)
while reader.Read():
if reader.NodeType == XmlNodeType.Element:
if reader.Name=="NAME":
reader.Read()
plog(reader.Value + "\n");
Это дает мне следующее сообщение об ошибке, как только я запускаю его:
XmlException: данные на корневом уровне является недействительным. Строка 1, позиция 3.
Вот XML часть редактируемого файла:
0
EMPORT
999
<PORTLIST><HPORT><NAME>PORT TEST</NAME></HPORT></PORTLIST>
0
SEQEND
Не использовать XmlReader до тех пор, пока вы уже уверен, что вы читаете XML-контент. Если ничего больше не начнется с '<', используйте эту информацию. –
Я также настоятельно рекомендую использовать более современную библиотеку XML - 'lxml.etree', или ElementTree, если придерживаться стандартной библиотеки и т. Д. Любой из них сделает операции' tostring() 'и' fromstring() 'тривиальными , –
@CharlesDuffy Где я могу найти документацию для этих библиотек? Я хотел немного изменить библиотеку, но я традиционно являюсь C++-кодером, поэтому у меня нет большого опыта в Python. – user2970916