QT中如何修改XMl文件中节点值

加班加到吐狂魔 2017-04-06 08:59:37
如何用代码实现修改xml文件中节点值:
xml文件:
<kdevelop>
<general>
<author>zeki</author>
<email>caizhiming@tom.com</email>
</general>
<general>
<author>lihua</author>
<email>lihua@tom.com</email>
</general>
</kdevelop>


将上面《author》中zeki 改为 laowang;
谢谢各位大神!
...全文
1329 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
程序猿的员 2020-08-21
  • 打赏
  • 举报
回复
QDomNodeList child = list.at(i).toElement().elementsByTagName(tr("设备")); //找到它的所有子节点. for(int i=0;i<child.count();i++) { QDomElement eqme = child.at(i).toElement(); if(eqme.attribute(tr("ID")) == ui->lineEdit_title->text()) { qDebug()<<eqme.firstChild().toElement().firstChild().nodeValue(); //child.at(0).toElement().firstChild().setNodeValue(ui->lineEdit_title->text()); //将它子节点的首个子节点(就是文本节点)的内容更新 eqme.firstChild().toElement().firstChild().setNodeValue(ui->lineEdit_author->text()); //= (ui->lineEdit_author->text()); QFile file("my.xml"); //保存更改 if(!file.open(QIODevice::WriteOnly | QIODevice::Truncate)) return ; QTextStream out(&file); doc.save(out,4); //保存文档,4为子元素缩进字符数 file.close(); ui->listWidget->clear(); ui->listWidget->addItem(tr("更新成功!")); }
菠萝猫咪 2017-04-06
  • 打赏
  • 举报
回复
你可以看一下用QDomDocument解析xml文件,找到author标签的值nodeValue(),更改后重新生成xml

16,216

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧