• 2382阅读
  • 0回复

关于合并XML的问题 [复制链接]

上一主题 下一主题
离线hello_1s
 

只看楼主 倒序阅读 楼主  发表于: 2014-10-15
我想将2个XML文件合并起来,采用的是dom方法:
读:

bool MainWindow::docRead()
{
    QFile file("123456.xml");
    if(!file.open(QFile::ReadOnly))return false;
     doc1 = new QDomDocument();
    if(!doc1->setContent(&file)){
        file.close();
        return false;
    }
    file.close();
    return true;
}
写:

bool MainWindow::docWrite()
{
QFile file("456123.xml");
if(!file.open(QFile::WriteOnly| QFile::Text))return false;
QTextStream out(&file);
doc2.save(out,4);
file.close();
return true;

}
然后是写入过程:

QDomElement docElem1=doc1->documentElement(); QDomElement docElem2=doc2.documentElement();
QDomNode n=docElem1.firstChild();

while(!n.isNull()){             if(n.isElement()){
                 QDomElement e=n.toElement();                 QDomElement temp=n.cloneNode(true).toElement();
                 docElem2.appendChild(temp);
}
        n=n.nextSibling();
     }
最后的结果是:能读取123456.XML的加点,但是456123.XML的文件中不仅没有被写入123456的内容,而且自身内容也被清空了。
求指教!感激
快速回复
限100 字节
 
上一个 下一个