Я пытаюсь проанализировать XML-файл с некоторыми узлами, содержащими HTML, в Qt, это выглядит так:
<root>
<list>
<element>Some <i>text<i></element>
<element><b>another line of text<b></element>
<element><i>Tag opened here</element>
<element>and closed here</i></element>
</list>
</root>
Я пробовал разные подходы в Qt, но получить HTML от узла было как-то не возможно(простым способом).
QDomDocument :Единственный способ найти текст QDomElement: использовать функцию save () ( документация ), но тогда я получу всю строку " ... ", а нетолько внутренний текст.
QXmlStreamReader Существует функция readElementText (QXmlStreamReader :: IncludeChildElements) ( документация ), но она удаляет теги HTML, поэтому текст первого примера будет содержать только «Некоторый текст».
Можетэто будет сделано более эффективным способом?
Я подумал о другом решении, что вы об этом думаете:
Как насчет упаковки содержимого тегов в разделы CDATA (используяфункции замены строк или регулярных выражений) до анализа файла xml?