if(QString::compare(tagname, "g", Qt::CaseInsensitive) == 0) { // group
QDomNodeList list = e.childNodes(); // 遍历群组中所有标签
for(int i=0; i<list.count(); i++)
{
QDomNode n=list.at(i);
if(QString::compare(n.nodeName(), "g", Qt::CaseInsensitive) == 0) { // group
QDomNodeList list1 = n.childNodes(); // 遍历群组中所有标签
for(int i1=0; i1<list1.count(); i1++)
{
QDomNode n1=list1.at(i1);
if(QString::compare(n1.nodeName(), "g", Qt::CaseInsensitive) == 0) { // group
QDomNodeList list2 = n1.childNodes(); // 遍历群组中所有标签
for(int i2=0; i2<list2.count(); i2++)
{
QDomNode n2=list2.at(i2);
qout << n2.nodeName();
parseSVGTag(n2.toElement(), n2.nodeName());
}
} else {
qout << n1.nodeName();
parseSVGTag(n1.toElement(), n1.nodeName());
}
}
} else {
qout << n.nodeName();
parseSVGTag(n.toElement(), n.nodeName());
}
}
} else {
qout << tagname;
parseSVGTag(e, tagname);
}
如何用while循环简化代码?
此段代码的作用是碰到group标签就打开遍历