QXmlStreamReader 读取xml问题
我用QXmlStreamReader读取下面的xml时, GLOBAL这块老是读取不到,但是用tinyXml确是能够正常读取。
<?xml version="1.0" encoding="GBK"?><!-- TEST --><ToDo> <!-- WELCOME --></ToDo><!-- 全局设置 --><GLOBAL> <!-- UU --> <item APP_CLIENT_IP="10.10.10.10" APP_SERVER_IP="10.10.10.11"/></GLOBAL>
QString fileName("xml.xml"); QFile file(fileName); if (!file.open(QFile::ReadOnly | QFile::Text)) { QMessageBox::warning(this, tr("QXmlStream Bookmarks"), tr("Cannot open file %1:\n%2.") .arg(fileName) .arg(file.errorString())); return; } QXmlStreamReader xml; bool succ = false; xml.setDevice(&file); while (!xml.atEnd()) { qDebug() << "name " << xml.name() << "text " << xml.readElementText() << "tokentype " << xml.tokenType(); if (xml.isCharacters()) { //qDebug() << xml.text(); } xml.readNext(); qDebug() << "2 name " << xml.name() << "text " << xml.readElementText() << "tokentype " << xml.tokenType(); qDebug() << xml.errorString(); } if(isEndElement()) { if(name() == "item") { qDebug()<<"......"; } }
[解决办法]
读不到就证明:
<DATA>
...
</DATA>
只能这种标准格式
[解决办法]