私は現在、doxygen XML 出力用のパーサーを作成しています。一部は学術的な理由と、doxygen/addons/doxmlparser のコードが古いためです。
QXmlStreamReader を使用して XML を解析していますが、一部の属性でエラーが発生します。たとえば、次の XML は doxygen によって生成されます。
...
<listofallmembers>
...
<member refid="qset_1operator&" prot="public" virt="non-virtual"><scope>libDatabase::Set</scope><name>operator&</name></member>
...
</listofallmembers>
これrefid="qset_1operator&"
はもちろん問題です:
XmlStreamReaderError: Expected '#' or '[a-zA-Z]', but got '"'.
その他のエラーには<>
、XML 属性に文字 (およびその他) が含まれていることが含まれます。
<
これらの文字を、>
などの対応する文字に置き換える必要があることはわかっています。
Qt のクラスを使用して XML を見ることさえできない場合、XML を簡単に (もちろん自動的に) 修正するにはどうすればよいでしょうか?