c#操作xml文件示例

下面是详细讲解“c#操作xml文件示例”的完整攻略:

1. 创建一个XML文件

要操作XML文件,首先需要创建一个XML文件。可以使用以下代码创建books.xml文件:

using System.Xml;

public void CreateXmlFile()
{
    XmlDocument xmlDoc = new XmlDocument();
    XmlElement root = xmlDoc.CreateElement("books");
    xmlDoc.AppendChild(root);

    XmlElement book1 = xmlDoc.CreateElement("book");
    book1.SetAttribute("id", "1");

    XmlElement title1 = xmlDoc.CreateElement("title");
    title1.InnerText = "C#入门经典";

    XmlElement author1 = xmlDoc.CreateElement("author");
    author1.InnerText = "David Hayden, Chris Sells";

    XmlElement price1 = xmlDoc.CreateElement("price");
    price1.InnerText = "39.99";

    book1.AppendChild(title1);
    book1.AppendChild(author1);
    book1.AppendChild(price1);

    XmlElement book2 = xmlDoc.CreateElement("book");
    book2.SetAttribute("id", "2");

    XmlElement title2 = xmlDoc.CreateElement("title");
    title2.InnerText = "C#高级编程";

    XmlElement author2 = xmlDoc.CreateElement("author");
    author2.InnerText = "Jessen, Ben Albahari";

    XmlElement price2 = xmlDoc.CreateElement("price");
    price2.InnerText = "49.99";

    book2.AppendChild(title2);
    book2.AppendChild(author2);
    book2.AppendChild(price2);

    root.AppendChild(book1);
    root.AppendChild(book2);

    string fileName = @"D:\books.xml";
    xmlDoc.Save(fileName);
}

在上述代码中,我们首先创建一个XmlDocument对象,然后创建根节点books。接下来,我们分别创建两个子节点book1book2,并为它们设置属性值id。然后,为每个子节点分别创建titleauthorprice子元素,并设置它们的文本内容。最后,将每个子节点添加到根节点中,并将整个XmlDocument保存到文件中。

2. 读取XML文件内容

读取XML文件的内容也很简单。可以使用以下代码读取刚才创建的books.xml文件:

using System.Xml;

public void ReadXmlFile()
{
    string fileName = @"D:\books.xml";
    XmlDocument xmlDoc = new XmlDocument();
    xmlDoc.Load(fileName);

    XmlNodeList bookNodes = xmlDoc.SelectNodes("//books/book");
    foreach (XmlNode bookNode in bookNodes)
    {
        string id = bookNode.Attributes["id"].Value;
        string title = bookNode.SelectSingleNode("title").InnerText;
        string author = bookNode.SelectSingleNode("author").InnerText;
        string price = bookNode.SelectSingleNode("price").InnerText;

        Console.WriteLine("书籍编号:{0}", id);
        Console.WriteLine("书籍名称:{0}", title);
        Console.WriteLine("书籍作者:{0}", author);
        Console.WriteLine("书籍价格:{0}", price);
        Console.WriteLine();
    }
}

在上述代码中,我们首先使用XmlDocument类加载books.xml文件。然后,使用SelectNodes方法查询XML中所有的book节点,并遍历每个book节点。对于每个book节点,我们分别读取其中的属性和子元素,并输出到控制台上。

以上就是"c#操作xml文件示例"的完整攻略。通过上述代码示例,你应该已经能够了解如何使用C#对XML文件进行读写及操作了。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:c#操作xml文件示例 - Python技术站

(0)
上一篇 2023年5月30日
下一篇 2023年5月30日

相关文章

  • 电脑突然出现中文乱码怎么办?

    当电脑出现中文乱码时,可能是因为以下原因: 字符编码不一致 字体缺失 系统语言设置错误 下面我将为大家详细介绍处理中文乱码的攻略: 1. 更改字符编码 中文乱码通常是字符编码不一致导致的,可以尝试更改字符编码以解决问题。 步骤如下: 找到乱码文本所在的文件或文本框,右击选择“属性”。 在“属性”对话框中,切换到“详细信息”标签页。 查看“编码”字段,如果显示…

    html 2023年5月31日
    00
  • python写xml文件的操作实例

    以下是”Python写XML文件的操作实例”的攻略: 1. 导入XML模块 Python的xml模块是Python处理XML文件的标准库,使用前需要先import导入xml模块。 import xml.etree.ElementTree as ET 2. 生成XML文档 使用xml.etree.ElementTree.Element()方法生成根节点,并使用…

    html 2023年5月30日
    00
  • 拍抖音几点钟发布最佳?怎么拍能火

    以下是“拍抖音几点钟发布最佳?怎么拍能火”的完整攻略: 拍抖音几点钟发布最佳?怎么拍能火 抖音是一款非常流行的短视频应用,用户可以在抖音上发布自己的短视频,与其他用户分享自己的生活、才艺等。下面是拍摄抖音视频的技巧和发布时间的建议。 拍摄抖音视频的技巧 精选主题:选择一个有趣、有吸引力的主题,可以吸引更多的用户观看和点赞。 精简内容:抖音视频的时长较短,用户…

    html 2023年5月18日
    00
  • 详解 C# 中XML对象的序列化和反序列化

    下面详细讲解一下C#中XML对象的序列化和反序列化的完整攻略。 1. 什么是XML序列化和反序列化? XML序列化是将对象转换为序列化XML字符串,它将对象的公共属性和字段转换为XML元素和属性,然后将它们写入XML文件或流中,以进行传输和持久性存储。反之,XML反序列化则是将XML字符串转换为对象。 在C#中,.NET Framework提供了一个名为Sy…

    html 2023年5月30日
    00
  • 抖音评论区怎么发相册图片不是表情包? 抖音评论区发图片的技巧

    以下是“抖音评论区怎么发相册图片不是表情包? 抖音评论区发图片的技巧”的完整攻略: 抖音评论区怎么发相册图片不是表情包? 抖音评论区发图片的技巧 抖音是一款非常流行的短视频应用程序,用户可以在抖音评论区中发表评论,与其他用户互动。下面是一些抖音评论区发图片的技巧,可以帮助用户发表高质量的评论。 技巧1:使用相册图片 用户可以使用相册图片来发表评论。用户需要先…

    html 2023年5月18日
    00
  • 简单介绍Python2.x版本中的cmp()方法的使用

    当提到比较两个变量时,我们通常会使用比较运算符比较它们的大小。在Python 2.x版本中,还提供了一个函数cmp()用于比较两个对象的大小,并返回一个整数,表示它们的相对大小关系。 cmp()方法的用法 cmp()方法有两个参数x和y,它们分别表示要比较的两个对象。如果x小于y,则返回一个负整数;如果x等于y,则返回0;如果x大于y,则返回一个正整数。 下…

    html 2023年5月30日
    00
  • Android字符串和十六进制相互转化出现的中文乱码问题

    在Android中进行字符串和十六进制之间的转换时,经常会遇到中文乱码的问题。这是由于在不同编码方式之间转换时,如果编码不匹配,就会出现乱码。下面是一些解决这个问题的方法: 1. 字符串和十六进制相互转换 下面的代码演示了如何将一个字符串转换为十六进制表示形式: String str = "hello world"; byte[] byt…

    html 2023年5月31日
    00
  • 如何制作U盘启动安装Win8系统

    以下是制作U盘启动安装Win8系统的完整攻略: 下载Win8系统镜像文件:首先,您需要从官方网站或其他可靠的来源下载Win8系统镜像文件。请确保您下载的镜像文件与您的计算机硬件兼容。 准备U盘:接下来,您需要准备一个容量大于4GB的U盘,并将其格式化为FAT32文件系统。请注意,此操作将会清除U盘中的所有数据,请确保您已经备份了重要的数据。 使用Rufus制…

    html 2023年5月17日
    00
合作推广
合作推广
分享本页
返回顶部