1、读操作:

QDomDocument doc( “mydocument " );

QFile file( "ccc.xml" );

if ( !file.open( IO_ReadOnly ) )

{

return;

}

if ( !doc.setContent( &file ) )

{

file.close();

return;

}

file.close();

2、写操作

原理很简单,由于XML是分级结构,因此只要找到需要写的Node的所在的级别,然后调用setNodeValue("value")就写好了。

<?xml version="1.0" encoding="unicode" ?>

<XML>

第一级:<MAINT TableName="RSBT_STATION" OtherInfo="" opttype="1" version="1.0.0"FormTableName="TABLE11">

第二级:<FORM opttype="1">

第三级:<STDI>0001(第四级)</STDI>

<GUID/> (第四级)

<TAPPCODE>111111111111(第四级)</TAPPCODE>

在上边的代码中,如果是想改变111111111111的值,由于它处在第四级,因此只要

QDomElement docElem = doc.documentElement();

QDomNode node = docElem.childNodes().item(0).childNodes().item(0).childNodes().item(0);

那么node对象就是指的111111111111了。

3、保存

方法就更简单了,如果是调用save函数,可能会报错,至少我用save函数就没能实现保存;这里有一个非常简单的法:就是

QString xml = doc.toString();

也就是说将QDomDocument对象变成字符串,已经成字符串了,应该知道怎么保存了吧。

Qt 读写XML文件的更多相关文章

  1. Qt读写xml文件

    写xml <root> <element> <sub id=-1></sub> </element> </root> //添加x ...

  2. QXmlStreamReader/QXmlStreamWriter实现Qt下xml文件读写

    版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:QXmlStreamReader/QXmlStreamWriter实现Qt下xml文件读写   ...

  3. 初识---Qt解析XML文件(QDomDocument)

    关于XML及其使用场景不在此多做介绍,今天主要介绍Qt中对于XML的解析.QtXml模块提供了一个读写XML文件的流,解析方法包含DOM和SAX,两者的区别是什么呢?  DOM(Document Ob ...

  4. C#读写xml文件的常用方法

    已知有一个XML文件(bookshop.xml)如下: <?xml version="1.0" encoding="gb2312" ?> <b ...

  5. PHP读写XML文件的四种方法

    PHP对XML文件进行读写操作的方法一共有四种,分别是:字符串方式直接读写.DOMDocument读写. XMLWrite写和XMLReader读.SimpleXML读写,本文将依次对这四种方法进行介 ...

  6. Java 读写XML文件 API--org.dom4j

    om4j是一个Java的XML API,类似于jdom,用来读写XML文件的.dom4j是一个十分优秀的JavaXML API,具有性能优异.功能强大和极其易使用的特点,同时它也是一个开放源代码的软件 ...

  7. Fixflow引擎解析(三)(模型) - 创建EMF模型来读写XML文件

    Fixflow引擎解析(四)(模型) - 通过EMF扩展BPMN2.0元素 Fixflow引擎解析(三)(模型) - 创建EMF模型来读写XML文件 Fixflow引擎解析(二)(模型) - BPMN ...

  8. cocos2d-x 读写 xml 文件

    cocos2d-x 读写 xml 文件 A product of cheungmine使用cocos2d-x开发2d游戏确实方便,但是对于一般的小游戏,经常需要的工作是UI布局设计和调整,代码改来改去 ...

  9. java通过dom读写xml文件

    java通过dom读写xml文件 要读的xml文件 <?xml version="1.0" encoding="GB2312"?><学生花名册 ...

随机推荐

  1. iOS: 属性列表介绍 Introduction to Property Lists

    iOS: 属性列表介绍 Introduction to Property Lists 从本质上说, 属性列表就是苹果的对象数据序列化与反序列化方式 属性列表使用几种数据类型把数据组织为键值表和值表 P ...

  2. IOS 项目名称修改(XCODE4.6)

    最近为了保存苹果商店已有版本软件,打算重新上传一个程序,与原来的软件仅样式不同.在修改网plist文件中的名称后,archive时报错了,结果发现时工程名称没有修改到.下面就与大家分享下修改已有项目名 ...

  3. c++/MFC 封装好的文件内存映射类

    整理日: 2015年2月16日 首先介绍内存映射文件操作------函数的用法以及先后执行顺序 // 第一步:创建文件 HANDLE hFile = CreateFileForMapping(_T(& ...

  4. PyCharm如何设置显示行号?

    File->setting->Editor->General->Appearance,勾选Show line numbers

  5. YARN应用程序开发流程(类似于MapReduce On Yarn)本内容版权归(小象学院所有)

    MapReduce On Yarn和MapReduce程序区别 MapReduce On Yarn(由专业人员开发)1 为MapReduce作业运行在YARN上提供一个通用的运行时环境2 需要与Yar ...

  6. win7中的Uac与开机自动启动(好几种办法,特别是用不带UAC的程序启动UAC程序是一个简单的好办法,写驱动自启动更是了不得)

    在另一篇文章中已经介绍了给Exe加上Uac的方法,在使用的过程中我们会发现,如果把带Uac的Exe写入注册表的Run中,是无法实现开机自动启动的,原因就是带Uac的exe需要申请管理员权限,以便运行执 ...

  7. FILTER优化

    explain plan for select a.* from fxqd_list_20131115_new_100 a where (acct_no, oper_no, seqno, trans_ ...

  8. UML-图的意义

    在UML类图中,常见的有以下几种关系: 泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Composit ...

  9. ♫【模式】Curry化

    /** * 当发现正在调用同一个函数,并且传递的参数绝大多数都是相同的, * 那么该函数可能是用于Curry化的一个很好的候选参数 */ ;(function() { function add(x, ...

  10. NDK的安装和下载

    从官网下载NDK 下载页面:https://developer.android.com/ndk/downloads/index.html 从镜像站点下载NDK "大师兄"是一个由腾 ...