一般来讲,用dom来解析xml,一般会这样写,qt的官方文档也是这样的。
一般用QFile类把xml文件读到设备中,然后用QDomDocument类用setcontent()函数把设备的数据进行解析和整理,也就是传说中的树结构。官方文档是用documentelement()函数来返回一个跟元素,但是也有些人,比如说我把,就会用QDomDocument::firstchild()来返回一个更节点,因为反正要用节点类来进行递归吗,但是这个返回是xml的申明元素,就会竟如一个死循环了。
还有那个firstchild()返回一个节点,如果是没有节点,就返回一个空的节点,如果改变返回的节点也会改变节点树的节点,这好像是返回引用一样。
像这样的还有nextsibing()改变返回的,同时也会改变里面树里面的东西。
最好用hasnodes()函数来检测是否还有子节点。