接着昨天的来讲写XML来讲,最大的问题就是要分清root与children节点。要知道你是在哪个节点操作的,是子节点还是父节点。
然后配合使用API来解析就可以了。我们要知道Tag就是<>中的属性。attribute就是属性值。
部分xml如下图:
<Books> <Book Name="My Book 0" ID="0"> <Chapter Name="Chapter 0" ID="0"/> <Chapter Name="Chapter 1" ID="1"/> <Chapter Name="Chapter 2" ID="2"/> <Chapter Name="Chapter 3" ID="3"/> <Chapter Name="Chapter 4" ID="4"/> </Book> ..............
我们如果要读入这个xml文件,那么我们要确定他的root tagname 与attribute
void ListElements(QDomElement root,QString tagname,QString attribute) { QDomNodeList items = root.elementsByTagName(tagname); qDebug() << "Total items = " << items.count(); for(int i=0;i<items.count();i++) { QDomNode itemnode = items.at(i); if(itemnode.isElement()) { QDomElement itemele =itemnode.toElement(); qDebug() << itemele.attribute(attribute); } } }//这个就是将每个root下面的tagname attribute打印出来。