作者:nileel来源:CSDN发布时间:2008-09-0919:13阅读:49359次推荐:12原文链接[收藏]
[1]C#读写xml文件
[2]C#读写xml文件
c#读写xml文件
已知有一个XML文件(bookstore.xml)如下:
<?xmlversion="1.0"encoding="gb2312"?>
<bookstore>
<bookgenre="fantasy"ISBN="2-3631-4">
<title>Oberon'sLegacy</title>
<author>Corets,Eva</author>
<price>5.95</price>
</book>
</bookstore>
1、往<bookstore>节点中插入一个<book>节点:
Code
XmlDocumentxmlDoc=newXmlDocument();
xmlDoc.Load("bookstore.xml");
XmlNoderoot=xmlDoc.SelectSingleNode("bookstore");//查找<bookstore>
XmlElementxe1=xmlDoc.CreateElement("book");//创建一个<book>节点
xe1.SetAttribute("genre","李赞红");//设置该节点genre属性
xe1.SetAttribute("ISBN","2-3631-4");//设置该节点ISBN属性
XmlElementxesub1=xmlDoc.CreateElement("title");
xesub1.InnerText="CS从入门到精通";//设置文本节点
xe1.AppendChild(xesub1);//添加到<book>节点中
XmlElementxesub2=xmlDoc.CreateElement("author");
xesub2.InnerText="候捷";
xe1.AppendChild(xesub2);
XmlElementxesub3=xmlDoc.CreateElement("price");
xesub3.InnerText="58.3";
xe1.AppendChild(xesub3);
root.AppendChild(xe1);//添加到<bookstore>节点中
xmlDoc.Save("bookstore.xml");
结果为:
Code
<?xmlversion="1.0"encoding="gb2312"?>
<bookstore>
<bookgenre="fantasy"ISBN="2-3631-4">
<title>Oberon'sLegacy</title>
<author>Corets,Eva</author>
<price>5.95</price>
</book>
<bookgenre="李赞红"ISBN="2-3631-4">
<title>CS从入门到精通</title>
<author>候捷</author>
<price>58.3</price>
</book>
</bookstore>
2、修改节点:将genre属性值为“李赞红“的节点的genre值改为“update李赞红”,将该节点的子节点<author>的文本修改为“亚胜”。
XmlNodeListnodeList=xmlDoc.SelectSingleNode("bookstore").ChildNodes;//获取bookstore节点的所有子节点
foreach(XmlNodexninnodeList)//遍历所有子节点
{
XmlElementxe=(XmlElement)xn;//将子节点类型转换为XmlElement类型
if(xe.GetAttribute("genre")=="李赞红")//如果genre属性值为“李赞红”
{
xe.SetAttribute("genre","update李赞红");//则修改该属性为“update李赞红”
XmlNodeListnls=xe.ChildNodes;//继续获取xe子节点的所有子节点
foreach(XmlNodexn1innls)//遍历
{
XmlElementxe2=(XmlElement)xn1;//转换类型
if(xe2.Name=="author")//如果找到
{
xe2.InnerText="亚胜";//则修改
break;//找到退出来就可以了
}
}
break;
}
}
xmlDoc.Save("bookstore.xml");//保存。
最后结果为:
Code
<?xmlversion="1.0"encoding="gb2312"?>
<bookstore>
<bookgenre="fantasy"ISBN="2-3631-4">
<title>Oberon'sLegacy</title>
<author>Corets,Eva</author>
<price>5.95</price>
</book>
<bookgenre="update李赞红"ISBN="2-3631-4">
<title>CS从入门到精通</title>
<author>亚胜</author>
<price>58.3</price>
</book>
</bookstore>
3、删除<bookgenre="fantasy"ISBN="2-3631-4">节点的genre属性,删除<bookgenre="update李赞红"ISBN="2-3631-4">节点。Code
XmlNodeListxnl=xmlDoc.SelectSingleNode("bookstore").ChildNodes;
foreach(XmlNodexninxnl)
{
XmlElementxe=(XmlElement)xn;
if(xe.GetAttribute("genre")=="fantasy")
{
xe.RemoveAttribute("genre");//删除genre属性
}
elseif(xe.GetAttribute("genre")=="update李赞红")
{
xe.RemoveAll();//删除该节点的全部内容
}
}
xmlDoc.Save("bookstore.xml");
最后结果为:Code
<?xmlversion="1.0"encoding="gb2312"?>
<bookstore>
<bookISBN="2-3631-4">
<title>Oberon'sLegacy</title>
<author>Corets,Eva</author>
<price>5.95</price>
</book>
<book>
</book>
</bookstore>
4、显示所有数据。
XmlNodexn=xmlDoc.SelectSingleNode("bookstore");
XmlNodeListxnl=xn.ChildNodes;
foreach(XmlNodexnfinxnl)
{
XmlElementxe=(XmlElement)xnf;
Console.WriteLine(xe.GetAttribute("genre"));//显示属性值
Console.WriteLine(xe.GetAttribute("ISBN"));
XmlNodeListxnf1=xe.ChildNodes;
foreach(XmlNodexn2inxnf1)
{
Console.WriteLine(xn2.InnerText);//显示子节点点文本
}
}
分享到:
相关推荐
根据给定文件的信息,本文将深入探讨如何使用C#进行XML文件的读写操作,并详细介绍相关的知识点和技术细节。 ### C#中的XML处理简介 在.NET框架中,XML是一种非常重要的数据交换格式,广泛应用于Web服务、配置文件...
本教程将深入探讨如何使用C#对XML文件进行读写、增删改查操作。 首先,我们来了解C#中的System.Xml命名空间,它是处理XML的基础。该命名空间包含许多类,如XmlDocument、XmlNode、XmlElement等,用于创建、解析和...
本教程将深入探讨如何在C#中进行XML文件的读写操作。 1. **XML基础知识** - XML是一种自描述的标记语言,它使用标签来描述数据结构。 - XML文件由元素(Element)、属性(Attribute)、文本内容(Text Content)...
在C# WinForm应用程序中,读写XML文件是常见的数据操作任务。XML(eXtensible Markup Language)是一种用于存储和传输数据的标准格式,它结构清晰、易于解析且跨平台。下面将详细介绍如何使用C# WinForm来实现XML...
最后,当完成对XML文件的修改后,使用XmlDocument的Save方法保存更改: ```csharp doc.Save("configXML.xml"); ``` 这会将doc对象中的所有更改写回"configXML.xml"文件。 这个小测试程序的核心功能就是基于...
总结,C#提供了多种方式对XML文件进行读写操作,如使用`XmlDocument`和`XDocument`。选择哪种方式取决于具体需求,如文件大小、性能要求和代码可读性等因素。理解并熟练掌握这些方法,将有助于你在实际项目中高效地...
c#读取xml文件,有源代码,实现了两个读写的接口
本教程将详细讲解如何使用C#进行XML文件的读写操作,以及如何操作XML文档中的节点。 ### 1. XmlDocument类 `XmlDocument`是.NET框架中用于处理XML文档的主要类。它可以加载XML文件,然后提供一系列方法和属性来...
以上就是通过C#读写XML文件的主要步骤和技术点。这些步骤涵盖了加载文件、选择节点、创建新元素、更新属性和内容,以及最终保存文件等关键操作。掌握这些技术点,可以帮助开发者高效地处理XML数据。
本篇文章将探讨C#如何进行XML文件的读写操作,并对关键类进行详细说明。 首先,XML在.NET框架中的基础是System.Xml命名空间,它包含了处理XML文档的主要类。其中,XmlReader类是读取XML文档的基础,提供了一系列...
本教程将深入探讨如何使用C#进行XML文件的读写操作,并将读取的数据展示在datagridview控件中。 一、XML文件的基础知识 XML是一种标记语言,其结构清晰,易于人和机器解析。XML文件由元素、属性、文本和命名空间等...
C# XML文件读写操作源码,以及如何调用,注释详解,有任何问题请留言, 以下截取xml文件和部分调用代码段: * ++++++++++++++++++++++++++++++++++++++ <?xml version="1.0" encoding="utf-8" standalone="no"?&...
使用Document读取及写入XML方法 使用XmlTextWriter写入XML方法 使用XmlTextReader读取XML方法 作用SqlCommand.ExecuteXmlReader()取得XML
本文将深入探讨如何使用C#语言对XML文件进行加密和解密。 在C#中,可以使用System.Security.Cryptography命名空间下的类来实现XML文件的加密。主要涉及的类有:Aes(高级加密标准)、XmlDecryptionTransform和...
C# 读写 XML 文件总结 C# 读写 XML 文件是软件开发中常见的操作。本文总结了 C# 读写 XML 文件的基本方法,包括创建、修改和删除 XML 节点。 创建 XML 节点 C# 中使用 `XmlDocument` 类来创建和操作 XML 文件。...
本文将深入探讨如何在C#中实现XML文件的树形显示,以及如何进行节点的插入和删除操作。 首先,我们需要了解如何在C#中加载XML文件。这通常通过使用`System.Xml`命名空间中的`XmlDocument`类来完成。以下是一个简单...
在这个简单的课程资源管理系统中,我们将探讨如何利用C#对XML文件进行基本的操作,包括读取、写入、修改和删除XML数据。 首先,我们需要引入System.Xml命名空间,它是C#处理XML的基础。在C#代码中,可以使用以下...
本文实例讲述了C#通过DataSet读写xml文件的方法。分享给大家供大家参考。具体实现方法如下: DataSet ds = new DataSet(); //读取Xml文件 ds.ReadXml(Server.MapPath(xml/song.xml)); //生成Xml文件 ds.WriteXml...