C#操作XML文件:读取与写入技巧
"C#读写XML文件" 在C#编程中,XML(Extensible Markup Language)文件是一种常用的数据存储和交换格式。它结构清晰,易于人和机器解析,因此在许多应用程序中都有应用。本篇将介绍如何使用C#的几个核心类来读取和写入XML文件。 首先,我们可以使用`XmlDocument`类来读取和修改XML文件。`XmlDocument`提供了加载XML文档到内存中的功能,并且可以进行DOM(Document Object Model)操作,允许我们像处理DOM树一样操作XML数据。 在提供的示例代码中,有一个名为`phone.xml`的XML文件,包含了一个电话簿的结构,每个电话记录由`<phone>`元素表示,包含`<Name>`、`<Number>`、`<City>`和`<DateOfBirth>`子元素。以下是如何使用`XmlDocument`读取和写入XML文件的方法: ```csharp private void xmlFun() { XmlDocument doc = new XmlDocument(); // 加载XML文件 doc.Load(Server.MapPath("phone.xml")); // 创建新的电话记录元素 XmlElement node = doc.CreateElement("phone"); // 添加属性 XmlAttribute atr = doc.CreateAttribute("id"); atr.InnerText = "003"; node.Attributes.Append(atr); // 添加子元素 XmlNode xnode = (XmlNode)doc.CreateElement("Name"); xnode.InnerText = "testName"; node.AppendChild(xnode); xnode = (XmlNode)doc.CreateElement("Number"); xnode.InnerText = "119"; node.AppendChild(xnode); xnode = (XmlNode)doc.CreateElement("City"); xnode.InnerText = "cs"; node.AppendChild(xnode); // 将新元素添加到XML文档中 doc.DocumentElement.AppendChild(node); // 保存修改后的XML文件 doc.Save(Server.MapPath("phone.xml")); } ``` 这段代码首先创建了一个`XmlDocument`对象并加载了`phone.xml`文件。然后,通过`CreateElement`方法创建了一个新的`phone`元素,并设置了其`id`属性。接着,创建了`Name`、`Number`和`City`子元素,并分别设置了它们的文本内容。最后,将新创建的`phone`元素添加到XML文档的根元素(`PhoneBook`)下,并保存修改后的文档。 除了`XmlDocument`,还有其他类可以用于XML文件的读写。例如,`XmlTextWriter`用于写入XML,它提供了一种流式写入的方式,可以更有效地处理大型XML文件。`XmlTextReader`则用于读取XML,它以只进不退的方式逐节点读取,适合用于读取大文件或网络流。 另外,`SqlCommand.ExecuteXmlReader()`方法在数据库操作中用于执行返回XML结果集的SQL查询。这个方法通常在需要从数据库检索XML格式数据时使用,例如,当查询结果是一个复杂的数据结构,可以以XML形式返回时。 C#提供了丰富的XML处理库,包括`XmlDocument`、`XmlTextWriter`、`XmlTextReader`等,可以满足不同场景下的XML读写需求。理解并熟练掌握这些工具,对于开发涉及XML数据处理的应用程序至关重要。
**************************** phone.xml ****************************
<?xml version="1.0" encoding="utf-8" ?>
<PhoneBook>
<phone id="001">
<Name>加菲尔德</Name>
<Number>5555555</Number>
<City>纽约</City>
<DateOfBirth>26/10/1978</DateOfBirth>
</phone>
<phone id="002">
<Name>迈克</Name>
<Number>6666666</Number>
<City>纽约</City>
<DateOfBirth>12/02/1978</DateOfBirth>
</phone>
</PhoneBook>
*********************************************************************
·使用Document读取及写入XML方法
private void xmlfun()
{
XmlDocument doc = new XmlDocument();
doc.Load(Server.MapPath("phone.xml"));
XmlElement node = doc.CreateElement("phone");
XmlAttribute atr = doc.CreateAttribute("id");
下载后可阅读完整内容,剩余3页未读,立即下载
- 粉丝: 0
- 资源: 15
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦