Qt笔记(4)操作XML二

本文用 QDomDocument 实现创建XML文件

在上一节的工程中加入一个按钮,在按钮的clicked()槽中加入以下代码:

  
  
  
  
  1. void MainWindow::on_pushButton_2_clicked() 
  2.     QFile file("C:/new.xml"); 
  3.     if(!file.open(QFile::WriteOnly | QFile::Text)) 
  4.     { 
  5.         ui->textEdit->append(tr("文件打开失败")); 
  6.     } 
  7.  
  8.     QDomDocument doc; 
  9.     doc.appendChild(doc.createProcessingInstruction("xml""version=\"1.0\" encoding=\"GBK\"")); 
  10.  
  11.     //根节点 
  12.     QDomElement root = doc.createElement("Root"); 
  13.     doc.appendChild(root); 
  14.  
  15.     //子节点 
  16.     QDomElement child = doc.createElement("Test"); 
  17.     QDomText text = doc.createTextNode(tr("金财税"));// child.setNodeValue(tr("金财税"))的方法无效果,原因不明 
  18.     child.appendChild(text); 
  19.     child.setAttribute("Attr""属性"); 
  20.     root.appendChild(child); 
  21.  
  22.     //输入XML文件 
  23.     QTextStream out(&file); 
  24.     doc.save(out, 4);//这里的4暂时不知道是什么意思 
  25.     file.close(); 

还需要在源文件头部加入引用:

  
  
  
  
  1. #include <QTextStream> 

如果执行成功,会在C盘里找到new.xml文件,文件内容如下:

  
  
  
  
  1. <?xml version="1.0" encoding="GBK"?> 
  2. <Root> 
  3.     <Test Attr="属性">金财税</Test> 
  4. </Root> 

 

你可能感兴趣的:(xml,qt,教程)