写xml文件问题,一直没有解决,求赐教。。
有一个XML文件内容如下:
<index>
<sub>
<AA>111111</AA>
<BB>222222</BB>
</sub>
<sub>
<AA>33333</AA>
<BB>4444</BB>
</sub>
</index>
我要追加一个sub节点进去,用 QDomElement root=doc.documentElement()获得xml的index跟节点(doc是读出的xml文件的QDomDocument类对象),然后用root.appendChild(Sms)添加一个节点,但是运行时都是说一个空节点无法添加子节点,本人以前没怎么接触过xml,还请求教怎么添加一个追加一个sub子节点进去呢?谢谢!
[解决办法]
QString text; QDomElement element = doc.documentElement(); for(QDomNode n = element.firstChild(); !n.isNull(); n = n.nextSibling()) { QDomText t = n.toText(); if (!t.isNull()) text += t.data(); }
[解决办法]
[User:root Time:21:52:11 Path:/home/liangdong/php]$ php dom.php <?xml version="1.0"?><index><sub><AA>111111</AA><BB>222222</BB></sub><sub><AA>33333</AA><BB>4444</BB></sub></index><sub><aa>55555</aa><bb>66666</bb></sub>[User:root Time:21:52:11 Path:/home/liangdong/php]$ cat dom.php <?php$xml = <<<EOF<index> <sub> <AA>111111</AA> <BB>222222</BB> </sub> <sub> <AA>33333</AA> <BB>4444</BB> </sub></index>EOF;$dom = new DOMDocument();$dom->loadXML($xml, LIBXML_NOBLANKS);$sub = $dom->createElement("sub");$aa = $dom->createElement("aa");$bb = $dom->createElement("bb");$dom->appendChild($sub);$sub->appendChild($aa);$sub->appendChild($bb);$text_aa = $dom->createTextNode("55555");$text_bb = $dom->createTextNode("66666");$aa->appendChild($text_aa);$bb->appendChild($text_bb);echo $dom->saveXML();?>
[解决办法]
你看看你加载xml文件是否成功了? 检查一下函数返回值.