我有一个XML文档,其中包含已注释掉的元素。如何在此示例应用程序中跳过该项?
#include <QtGui>
#include <QtXml>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QPlainTextEdit editor;
QString xml = "<?xml version=\"1.0\" encoding=\"utf-8\"?>"
"<list>"
"<item id=\"1\" />"
"<item id=\"2\" />"
"<!-- <item id=\"3\" /> -->"
"<item id=\"4\" />"
"</list>";
QDomDocument doc;
doc.setContent(xml.toAscii());
QDomElement list = doc.documentElement();
QDomNodeList items = list.childNodes();
for(int x=0; x< items.count(); x++)
{
QDomElement element = items.at(x).toElement();
if(1)
{
editor.appendPlainText(QString::number(x)+": "+element.attribute("id"));
}
}
editor.show();
return app.exec();
}
答案 0 :(得分:1)
通过检查QDomNode的类型。
for(int x=0; x< items.count(); x++)
{
if (items.at(x).isComment())
continue;
QDomElement element = items.at(x).toElement();
...
}