这节讲一下如何使用C#操作xml文档。操作xml类的命名空间在System.Xml下。

   创建XML文件:

使用XmlDocument类来创建一个xml文档对象,我们通过对这个对象添加子元素来为xml文档添加元素。

由于xml文档需要文档声明:

所以在第一次创建xml文件的时候,我们要为文档对象添加这些声明,添加这些声明要使用XmlDocument.CreateXmlDeclaration()方法。调用AppendChild()方法将这个声明添加进去。

另外,由于xml的节点都要包含在根标签中,还要添加根标签元素,根标签名称可以任意(一般为root),但是不能以数字开头(在编程领域,一般都不会允许数字开头的名称),调用CreateElement("标签名")创建一个元素,同样的,调用AppendChild()添加进去:

如果是加载一个已有的xml文件,直接调用Load()方法即可:

    写入数据:

接下来,就可以往根标签中添加子元素存储数据了,使用CreateElement("标签名")创建一个元素,调用该元素对象的SetAttribute("属性名", "属性值")设置它的属性值,获取值就用GetAttribute("属性名")。我们就通过这些属性来存放数据。

添加完元素后,调用Save()方法,传入路径,就保存下来了,文档内容如下:

    读取数据:

对xml文档的读取需要使用XmlReader类,使用XmlReader.Create("文档路径")加载一个xml文档。

调用read()方法开始读取数据(这类似于SqlDataReader类),返回值为bool读到最后返回false,根据name判断读到的标签是不是自己需要的,如果需要就调用GetAttribute()获取到它的属性值。调用完要关闭对象,或者向下图一样用using块自动释放。

读取结果为:

技术群:添加小编微信并备注进群

小编微信:mm1552923

公众号:dotNet编程大全

使用C#进行XML文档读取相关推荐

  1. xml文档读取-SAX

    由于dom采用的是将xml文档加载入内存进行处理的方式,如果xml文档较大,则会导致加载时间过长,效率降低的情况,因此,sun公司在JAXP中又添加了对SAX的支持: SAX,全称Simple API ...

  2. XML 解析XML文档 XML约束

    XML 什么是XML Extensible Markup Language(可扩展的标记语言) 他是一个语言,有自己的语法,和Java以及其他的编程无关 "标记" 在文件中包含类似 ...

  3. 【Qt】DOM创建和操作XML文档

    00. 目录 文章目录 00. 目录 01. 概述 02. 开发环境 03. 创建XML文档 04. 读取XML文档 05. 增加XML节点 06. 查找.删除.更新XML文档 07. 附录 01. ...

  4. C#读取与修改XML文档

    在项目开发中,对XML文档的操作是很常用的,这里,简单的说明读取与修改XML文档 XML文档的格式 <?xml version="1.0" encoding="ut ...

  5. Qt 读取XML文档的简单示例

    目录名字 XML简介 Qt 操作XML文档一般方法 使用DOM读取XML文档 示例代码:读取XML文档 XML简介 XML(Extensible Markup Language,可扩展标记语言)是一种 ...

  6. 【Qt】DOM读取XML文档

    00. 目录 文章目录 00. 目录 01. 概述 02. 开发环境 03. XML文档示例 04. DOM读取XML文档内容 05. 预留 06. 附录 01. 概述 DOM(Document Ob ...

  7. [Qt教程] 第27篇 XML(一)使用DOM读取XML文档

    [Qt教程] 第27篇 XML(一)使用DOM读取XML文档 楼主  发表于 2013-5-21 21:14:28 | 查看: 1001| 回复: 14 使用DOM读取XML文档 版权声明 该文章原创 ...

  8. C#来创建和读取XML文档 [转]

    C#来创建和读取XML文档  [关键词]:XML 录入:小鱼之家 来源:http://fisher.xundain.com 时间:2005-3-3 23:41:54 点击:85次 扩展标记语言XML( ...

  9. 用C#读取XML文档

    本文将以一个非常简单的例子来说明如何使用C#访问一个XML文件并且读取其中的信息.例子本身并无任何实际意义,它只是简单的介绍了如何调用微软的XML标准以及如何运用到实际当中去.希望能够对初次接触C#或 ...

最新文章

  1. 验证视图MAC失败 Validation of ViewState MAC Failed
  2. 运行里用\\加IP地址访问远程主机和用mstsc登录远程主机有什么区别??
  3. 基于firefly rk3399 Android 7.1实现的ros服务小机器人
  4. mapgis编辑属性结构编辑不了_MapGIS67操作手册(3-17)MapGIS67编辑线属性结构的方法...
  5. [music]Canon and Gigue in D major
  6. JavaScript Ajax
  7. git安装 perl ubuntu_Ubuntu系统上安装Git
  8. Sun Virtualbox说明文件的Bug
  9. 模拟美萍加密狗--Rockey2虚拟狗(一)
  10. 如何用css设置文字加粗,css如何设置文字加粗
  11. 库文件 c语言 编译器,抽取VS文件组成类GCC的编译器,并编译C程序为dll动态链接库...
  12. 应用程序-特定权限设置_在您的应用程序中管理付款:设置网站-代码
  13. (转)CGJ02、BD09、西安80、北京54、CGCS2000常用坐标系详解
  14. RxSwift学习(三)— Observer、Binder、Subjects、BehaviorRelay
  15. 阅读---读吴军博士《态度》有感
  16. Pillow透视变换进行图片纠偏
  17. Latex最后一页文本或参考文献左右对齐(平衡)
  18. uniapp微信小程序的各种弹框提示(轻提示)
  19. python极客项目编程pdf微盘下载_《Python极客项目编程 》——2.4 完整代码
  20. 【案例分析】Realme海外不同市场的差异化精准获客打法

热门文章

  1. 盘点企业直播公司的选择误区
  2. 【功能实现】手机游戏虚拟摇杆功能实现
  3. 一个简易的ATM,存取款操作
  4. 盘一盘激光雷达的点云数据处理:感知/定位/工程层面全面梳理!
  5. 萌新从零开始学习计算机硬件系统
  6. 密码学安全--踪迹隐藏和加密通信
  7. python怎么把照片转成卡通_Python实现将照片变成卡通图片的方法【基于opencv】
  8. Java学习 —— 使用eclipse的7个小技巧
  9. linux 部署java的胡那就,心得之:linux下安装jdk tomcat oracle10g
  10. Java毕业设计_基于Android 的日用百货销售App