您的位置:首页 > 编程语言 > Qt开发

QT5中XML的解析(QXmlStreamReader)

2016-01-26 13:29 761 查看
一:读取XML中指定数据

XML内容:

<?xml version="1.0" encoding="UTF-8"?>
<resp>
<city>北京</city>
<fengli>2级</fengli>
<shidu>21%</shidu>
<wendu>10</wendu>
......
</resp>


解析代码:

QXmlStreamReader xml(QString(上面的内容));

while(!xml.atEnd())
{
if(xml.hasError())
{
qDebug()<<"XML有误";
return;
}
else if(xml.isStartElement()) //遇到开始标签,如<city>
{
if(xml.name()=="city")
{
today.city = xml.readElementText();
}
else if(xml.name()=="wendu")
{
today.wendu = xml.readElementText();

xml.clear(); //读取完清理一下
return;
}
else //遇到不需要的标签,如<fengli>和<shidu>
xml.readNext();
}
else //遇到结束标签,<span style="font-family: Arial, Helvetica, sans-serif;">如</city></span>
xml.readNext();
}
xml.clear();


二:顺序读取整个XML

一般使用判断加嵌套实现,具体可参考:Qt解析XML文件(QXmlStreamReader)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: