C#处理XML文件的示例详解

 更新时间:2024年11月12日 16:00:57   作者:CnLg.NJ  
XML是一种标记语言,是从标准通用标记语言(SGML)中简化修改出来的,本文主要介绍了C#处理XML文件的相关知识,有需要的小伙伴可以了解一下

一、基本介绍

可扩展标记语言(英语:eXtensible Markup Language,简称:XML),是一种标记语言。标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。如何定义这些标记,既可以选择国际通用的标记语言,比如HTML,也可以使用像XML这样由相关人士自由决定的标记语言,这就是语言的可扩展性。XML是从标准通用标记语言(SGML)中简化修改出来的。它主要用到的有可扩展标记语言、可扩展样式语言(XSL)、XBRL和XPath等。        

二、基本操作

1. 读取XML文件

使用XmlDocument类读取XML文件:

using System.Xml;
 
// 创建XmlDocument对象
XmlDocument xmlDoc = new XmlDocument();
 
// 加载XML文件
xmlDoc.Load("path/to/your/file.xml");
 
// 获取根节点
XmlNode root = xmlDoc.DocumentElement;
 
// 遍历节点
foreach (XmlNode node in root.ChildNodes)
{
    Console.WriteLine(node.Name);
}

2. 创建XML文件

使用XDocument类创建XML文件:

using System.Xml.Linq;
 
// 创建XDocument对象
XDocument xDoc = new XDocument(
    new XDeclaration("1.0", "utf-8", "yes"),
    new XElement("Root",
        new XElement("Child", "Value")
    )
);
 
// 保存到文件
xDoc.Save("path/to/your/newfile.xml");

3. 修改XML文件

修改XML文件中的元素:

// 假设你已经有了一个XDocument对象xDoc
XElement root = xDoc.Element("Root");
 
// 修改元素值
root.Element("Child").Value = "New Value";
 
// 添加新元素
root.Add(new XElement("NewChild", "New Value"));
 
// 删除元素
root.Element("Child").Remove();
 
// 保存修改
xDoc.Save("path/to/your/modifiedfile.xml");

4. 解析XML文件

解析XML文件并获取特定信息:

// 假设你已经有了一个XDocument对象xDoc
XElement root = xDoc.Element("Root");
 
// 获取所有Child元素的值
foreach (var child in root.Elements("Child"))
{
    Console.WriteLine(child.Value);
}

5. 使用XPath查询XML

// 使用XPath查询
XmlNodeList nodeList = xmlDoc.SelectNodes("//Child");
 
foreach (XmlNode node in nodeList)
{
    Console.WriteLine(node.InnerText);
}

三、注意事项

确保在项目中引入了必要的命名空间。

处理XML时,考虑到XML的格式和结构,确保代码能够正确地访问和修改XML元素。

在修改XML文件后,记得保存更改。

到此这篇关于C#处理XML文件的示例详解的文章就介绍到这了,更多相关C#处理XML文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C#字符串String及字符Char的相关方法

    C#字符串String及字符Char的相关方法

    这篇文章介绍了C#字符串String及字符Char的相关方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • C#实现XML文档的增删改查功能示例

    C#实现XML文档的增删改查功能示例

    这篇文章主要介绍了C#实现XML文档的增删改查功能,结合实例形式分析了xml文档的创建及C#针对xml文档的加载及增删改查等操作技巧,需要的朋友可以参考下
    2017-01-01
  • C#反射内存的处理分析

    C#反射内存的处理分析

    这篇文章主要介绍了C#反射内存的处理,较为详细的分析了反射加载的内存释放问题,具有一定的参考借鉴价值,需要的朋友可以参考下
    2014-12-12
  • 详解如何通过wireshark实现捕获C#上传的图片

    详解如何通过wireshark实现捕获C#上传的图片

    这篇文章主要为大家详细介绍了如何通过wireshark实现捕获C#上传的图片,文中的示例代码简洁易懂,具有一定的学习价值,感兴趣的小伙伴可以了解下
    2023-11-11
  • C#8 的模式匹配实现

    C#8 的模式匹配实现

    这篇文章主要介绍了C#8 的模式匹配实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • C#调用非托管dll的两种方式详解

    C#调用非托管dll的两种方式详解

    在开发过程中,我们经常需要调用一些非托管的DLL库,比如用Delphi编写的DLL,本文将介绍两种在C#中调用非托管DLL的方法,并通过代码示例介绍的非常详细,需要的朋友可以参考下
    2025-10-10
  • C#构建树形结构数据(全部构建,查找构建)

    C#构建树形结构数据(全部构建,查找构建)

    这篇文章主要介绍了C#构建树形结构数据(全部构建,查找构建),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-10-10
  • C# 使用Word模板导出数据的实现代码

    C# 使用Word模板导出数据的实现代码

    最近接到个需求,使用word模板导出数据,怎么实现这个需求呢,今天小编通过实例代码给大家介绍C# 使用Word模板导出数据的方法,感兴趣的朋友一起看看吧
    2021-06-06
  • C# MemoryStream的具体使用

    C# MemoryStream的具体使用

    MemoryStream是.NET中用于内存数据读写的流类,速度快且灵活,适用于临时缓存、二进制处理等场景,下面就来详细的介绍一下MemoryStream的使用,感兴趣的可以了解一下
    2025-07-07
  • C# Email发送邮件 对方打开邮件可获得提醒

    C# Email发送邮件 对方打开邮件可获得提醒

    这篇文章主要为大家详细介绍了C# Email发送邮件功能,对方打开通知你,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-11-11

最新评论