• 6106阅读
  • 1回复

清除xml文件的部分内容 [复制链接]

上一主题 下一主题
离线jiang_198586
 

只看楼主 倒序阅读 楼主  发表于: 2010-03-12
— 本帖被 XChinux 从 General Qt Programming 移动到本区(2011-01-02) —
添加节点前的xml如下:
mydocument.xml
<!DOCTYPE mydocument>
<datamodel>
    <DataID>
        <title>DEVS Beispiel</title>
    </DataID>
</datamodel>
添加节点后的xml:
mydocument.xml
<!DOCTYPE mydocument>
<datamodel>
    <DataID>
        <title>DEVS Beispiel</title>
    </DataID>
</datamodel>
<!DOCTYPE mydocument>
<datamodel>
   <DataID>
      <title>DEVS Beispiel</title>
   </DataID>
   <DataID1>
      <title1>DEVS Beispiel1</title1>
   </DataID1>
</datamodel>

程序代码:
bool config::addnode(){
    QFile file1("D://learnqt/ifis/linkconfig/mydocument.xml");
    if(file1.exists("D://learnqt/ifis/linkconfig/mydocument.xml")){
        QDomDocument doc("mydocument");
        file1.open(QIODevice::ReadWrite);        
        doc.setContent(&file1);
        QDomNode root1 = doc.documentElement();
        QDomElement dataId1 = doc.createElement("DataID1");
        QDomElement title1 = doc.createElement("title1");
        QDomText text1 = doc.createTextNode("DEVS Beispiel1");

        root1.appendChild(dataId1);
        dataId1.appendChild(title1);
        title1.appendChild(text1);        
        QTextStream out(&file1);
        doc.save(out,3);
    }
    else{

        QDomDocument doc("mydocument");
        QFile file("D://learnqt/ifis/linkconfig/mydocument.xml");
        file.open(QIODevice::ReadWrite);
        QDomElement root = doc.createElement("datamodel");
        QDomElement dataId = doc.createElement("DataID");
        QDomElement title = doc.createElement("title");
        QDomText text = doc.createTextNode("DEVS Beispiel");
        doc.appendChild(root);
        root.appendChild(dataId);
        dataId.appendChild(title);
        title.appendChild(text);
        QTextStream out(&file);
        doc.save(out,4);
    }
}
我想要实现添加节点后的xml文件内容为:
mydocument.xml
<!DOCTYPE mydocument>
<datamodel>
   <DataID>
      <title>DEVS Beispiel</title>
   </DataID>
   <DataID1>
      <title1>DEVS Beispiel1</title1>
   </DataID1>
</datamodel>
应该怎么修改上面的代码??
离线sikylori

只看该作者 1楼 发表于: 2010-04-27
不知道LZ解决没有,我参考了你的方法达到了我想要的效果,在此感谢一下,你所要的功能也是可以实现的
快速回复
限100 字节
 
上一个 下一个