C# 读写XML(代码分享)

下面是关于“C# 读写XML(代码分享)”的详细攻略:

C# 读写XML(代码分享)

在C#中,我们可以使用XML(可扩展标记语言)来存储和传输数据。XML是一种文本格式,类似于HTML,但被用来存储和传输数据,而不是描述网页。在C#中,我们可以使用System.XML命名空间下的类来读写XML文件。

创建XML文件

我们可以使用System.XML命名空间下的XmlWriter类来创建XML文件。XmlWriter类是一个抽象类,我们通常使用XmlWriter.Create()方法来创建XmlWriter的实例。以下示例演示了如何使用XmlWriter创建XML文件:

using System.Xml;

// 创建XML文件
XmlWriter xmlWriter = XmlWriter.Create("people.xml");
xmlWriter.WriteStartElement("People");

// 写入一个人的信息
xmlWriter.WriteStartElement("Person");
xmlWriter.WriteAttributeString("ID", "1");
xmlWriter.WriteElementString("Name", "Peter");
xmlWriter.WriteElementString("Age", "30");
xmlWriter.WriteEndElement();

// 写入另一个人的信息
xmlWriter.WriteStartElement("Person");
xmlWriter.WriteAttributeString("ID", "2");
xmlWriter.WriteElementString("Name", "Tom");
xmlWriter.WriteElementString("Age", "25");
xmlWriter.WriteEndElement();

// 结束写XML文件
xmlWriter.WriteEndElement();
xmlWriter.Close();

如上所示,我们首先使用XmlWriter.Create()方法创建了一个名为“people.xml”的XML文件。然后使用WriteStartElement()方法写入一个顶级元素“People”。接着,我们使用WriteStartElement()方法来写入一个Person元素,并使用WriteAttributeString()和WriteElementString()方法来添加属性和元素。最后,我们使用WriteEndElement()方法来结束Person元素的写入。重复以上步骤来写入多个人的信息。最后,我们使用WriteEndElement()方法来结束顶级元素“People”的写入。最后关闭XmlWriter。

读取XML文件

我们可以使用System.XML命名空间下的XmlReader类来读取XML文件。XmlReader类是一个抽象类,我们通常使用XmlReader.Create()方法来创建XmlReader的实例。以下示例演示了如何使用XmlReader读取XML文件:

using System.Xml;

// 读取XML文件
XmlReader xmlReader = XmlReader.Create("people.xml");

// 读取People元素
xmlReader.ReadStartElement("People");

// 读取每个Person元素
while (xmlReader.Read())
{
    if ((xmlReader.NodeType == XmlNodeType.Element) && (xmlReader.Name == "Person"))
    {
        if (xmlReader.HasAttributes)
        {
            Console.WriteLine(xmlReader.GetAttribute("ID"));
        }
        xmlReader.ReadStartElement("Person");
        Console.WriteLine(xmlReader.ReadElementString("Name"));
        Console.WriteLine(xmlReader.ReadElementString("Age"));
    }
}
xmlReader.Close();

如上所示,我们首先使用XmlReader.Create()方法创建了一个XmlReader实例,并打开“people.xml”文件。接着,我们使用ReadStartElement()方法读取顶级元素“People”。

接着,我们使用while循环来读取每个Person元素。在循环中,当XmlReader发现一个Person元素时,我们首先检查是否有ID属性,并使用GetAttribute()方法获取它的值。接着,我们使用ReadStartElement()方法开始Person元素。在该元素内,我们使用ReadElementString()方法来分别读取Name和Age元素的值。最后,我们使用ReadEndElement()方法结束Person元素。重复以上步骤以读取其他人的信息。

最后,使用Close()方法关闭XmlReader。

以上就是关于“C# 读写XML(代码分享)”的完整攻略。其中包含了两个示例,一个是使用XmlWriter创建XML文件,另一个是使用XmlReader读取XML文件。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C# 读写XML(代码分享) - Python技术站

(0)
上一篇 2023年6月7日
下一篇 2023年6月7日

相关文章

  • C#实现多文件打包压缩(.Net Core)

    C#实现多文件打包压缩(.Net Core)的攻略主要包括以下步骤: 引入NuGet包 在Visual Studio中打开你的项目,在Solution Explorer中右键点击你的项目,选择Manage NuGet Packages。在NuGet包管理器中搜索并安装DotNetZip库,也可以在Package Manager Console中执行以下命令进…

    C# 2023年6月3日
    00
  • C# FileAttributes.Archive:表示文件为归档文件

    FileAttributes.Archive方法的作用与使用方法 作用 在C#语言中,FileAttributes.Archive方法是用来获取或设置文件(或文件夹)的归档属性的。在计算机领域中,归档属性通常被用于标识哪些文件需要备份或复制,或者已经被备份或复制过。当我们修改或者创建一个文件时,系统会自动将该文件的归档属性置为“归档”(Archive)。也就…

    C# 2023年4月19日
    00
  • 在ASP.NET Core5.0中访问HttpContext的方法步骤

    在ASP.NET Core 5.0中访问HttpContext的方法步骤 在ASP.NET Core 5.0应用程序中,HttpContext是一个非常重要的对象,它提供了许多有用的信息和功能,例如请求和响应对象、用户身份验证信息、会话状态等。本攻略将介绍如何在ASP.NET Core 5.0应用程序中访问HttpContext对象。 步骤 以下是在ASP.…

    C# 2023年5月17日
    00
  • WinForm导出文件为Word、Excel、文本文件的方法

    WinForm是一种典型的Windows桌面应用程序开发技术,它提供了丰富的界面控件和处理逻辑的能力。在WinForm应用中,我们需要经常使用到文件导出功能,常见的导出格式包括Word文档、Excel文档以及文本文件。本篇攻略将详细介绍WinForm导出文件为Word、Excel、文本文件的方法,并提供两个示例说明。 1. 导出Word文档 1.1 安装并引…

    C# 2023年6月1日
    00
  • 一文详解C#中重写(override)及覆盖(new)的区别

    一文详解C#中重写(override)及覆盖(new)的区别 背景 在C#中,类成员的重写和覆盖是比较常见的概念,但很多人容易混淆二者的区别。本文将详细解释重写和覆盖的概念,并提供示例代码进行解释。 重写(override) 重写表明一个子类的方法将重写基类的方法。必须在子类中使用与父类相同的方法名称、返回类型和参数列表,才能重写基类的方法。子类的方法的访问…

    C# 2023年5月31日
    00
  • C#利用ODP.net连接Oracle数据库的操作方法

    C#利用ODP.net连接Oracle数据库的操作方法 简介 Oracle Data Provider for .NET(简称ODP.net)是Oracle公司自己提供的一种开发工具,ODP.net 是用于 .NET Framework 的 Oracle 数据提供程序,支持数据访问和数据源包装。 使用 ODP.net 需要在客户端安装 Oracle 数据库。…

    C# 2023年6月2日
    00
  • C# IsFixedSize:获取一个值,该值指示集合是否具有固定大小

    IsFixedSize 是 ICollection 接口的一种方法,其返回一个布尔值,指示集合是否具有固定大小。 语法 public bool IsFixedSize { get; } 返回值 方法返回一个布尔值,true表示集合大小是固定的;否则,false表示集合大小是可变的。 示例1 string[] languages = new string[] …

    C# 2023年4月19日
    00
  • C# String.Join()方法: 连接一个数组中的元素,用指定的分隔符隔开

    String.Join()方法是C#中提供的一个字符串处理方法,可用于将一个一维数组中的元素通过指定的分隔符进行连接,并返回一个新的字符串。使用String.Join()方法可以很方便地将数组中的元素拼接到一起,以便进行后续操作,例如输出、存储等。 该方法的使用格式如下: string joinedString = String.Join(separator…

    C# 2023年4月19日
    00
合作推广
合作推广
分享本页
返回顶部