QT4.8xml写入(1)

首先参考链接:
https://blog.csdn.net/wj584652425/article/details/124333804

源代码:

    QFile file("../softwareconfig.xml");
    if(!file.open(QIODevice::ReadOnly)){
        QMessageBox::warning(nullptr,QObject::tr("fail"),QObject::tr("open food.xml fail!"),QMessageBox::Ok);
        return;
    }

     QDomDocument domDocument;
     if (!domDocument.setContent(&file, true)){
         QMessageBox::warning(nullptr,QObject::tr("fail"),QObject::tr("domDocument.setContent fail!"),QMessageBox::Ok);
         file.close();
         return;
     }
     QDomDocument xDoc;
     QDomElement docElem = domDocument.documentElement();
     QDomNode lastNode = docElem.lastChild();

     //在lastitem上添加一个节点
     QDomElement NodeItem = domDocument.createElement("Node");

     QDomElement SoftNameItem = domDocument.createElement("SoftName");
     QDomElement SoftVersionItem = domDocument.createElement("SoftVersion");
     QDomElement SoftParameterItem = domDocument.createElement("SoftParameter");
     QDomElement SoftImgItem = domDocument.createElement("SoftImg");
     QDomElement SoftAddressItem = domDocument.createElement("SoftAddress");

     SoftNameItem.appendChild(xDoc.createTextNode(ui->m_softNameInput->text()));
     SoftVersionItem.appendChild(xDoc.createTextNode(ui->m_softVersionInput->text()));
     SoftParameterItem.appendChild(xDoc.createTextNode(ui->m_softParameterInput->text()));
     SoftImgItem.appendChild(xDoc.createTextNode(ui->m_softImgInput->text()));
     SoftAddressItem.appendChild(xDoc.createTextNode(ui->m_softAddressInput->text()));

     NodeItem.appendChild(SoftNameItem);
     NodeItem.appendChild(SoftVersionItem);
     NodeItem.appendChild(SoftParameterItem);
     NodeItem.appendChild(SoftImgItem);
     NodeItem.appendChild(SoftAddressItem);

     //添加元素节点到父节点
     docElem.appendChild(NodeItem);
     file.close();

     QFile fileModify("../softwareconfig.xml");
     if (!fileModify.open(QFile::WriteOnly | QFile::Text)){
         QMessageBox::warning(nullptr,QObject::tr("fail"),QObject::tr("fileModify ../softwareconfig.xml fail"),QMessageBox::Ok);
         return;
     }

     QTextStream out(&fileModify);
     domDocument.save(out,4);
     fileModify.close();

     return;

生成如下xml:

<?xml version="1.0" encoding="utf-8"?>
<hard>
  <Node>
    <SoftName>航电建模软件</SoftName>
    <SoftVersion>1.1.1</SoftVersion>
    <SoftParameter>null</SoftParameter>
    <SoftImg>c:/img</SoftImg>
    <SoftAddress>c:/data</SoftAddress>
  </Node>
</hard>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_小白鱼儿_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值