Qt in XML format using the analytical reading of QDomDocument
XML format
<Mode>
<A>
<B param1="9.721e+7" param2="20000" param3= "XXX"/>
<B param1="9.721e+7" param2="20000" param3= "AAA"/>
</A>
<A>
<B param1="9.721e+7" param2="20000" param3= "XXX"/>
<B param1="9.721e+7" param2="20000" param3= "AAA"/>
</A>
</Mode>
Analytic Functions
void AA::setActiveParam(QString string)
{
m_Parameters = string;
QDomDocument xml;
xml.setContent(m_Parameters);
//读取根元素<Mode>
QDomElement root = xml.documentElement();
//找到节点<A>
QDomElement data = root.firstChildElement("A");
while (!data.isNull())
{
QDomNodeList secondItem = data.childNodes(); //将当前节点<A>的所有元素<B>放到QDomNodeList 中,以便遍历
for (int i = 0; i < secondItem.count(); i++)
{
QDomNode node = secondItem.at(i);//取一个<B>
QString textname = node.toElement().attribute("param1");//查询属性值
qDebug(qPrintable(textname));
}
data = data.nextSiblingElement();//查询下一个节点<A>
}
}