我想将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的内容,而且自身内容也被清空了。
求指教!感激