使用XmlDocument或XDocument可读取XML注释。XmlDocument通过SelectNodes("//comment()")获取所有注释节点,XDocument利用Descendants().SelectMany(e=>e.Nodes()).OfType()筛选注释,二者均用Value属性提取内容。

在 C# 中读取 XML 文件中的注释内容,可以使用 XmlDocument 或 XDocument(LINQ to XML)来实现。XML 注释节点属于特殊类型的节点(XmlComment),需要通过遍历节点树并筛选出注释类型节点才能获取。
使用 XmlDocument 读取注释
XmlDocument 是传统的 XML 处理方式,适合处理较复杂的 XML 文档结构。
示例代码:
using System; using System.Xml;class Program { static void Main() { XmlDocument doc = new XmlDocument(); doc.Load("example.xml"); // 替换为你的文件路径
// 获取所有注释节点 XmlNodeList commentNodes = doc.SelectNodes("//comment()"); foreach (XmlNode node in commentNodes) { Console.WriteLine("注释内容: " + node.Value); } }}
说明:
- SelectNodes("//comment()") 使用 XPath 语法查找文档中所有注释节点。
- node.Value 获取注释文本内容(不包含 )。
使用 XDocument(LINQ to XML)读取注释
XDocument 更现代、简洁,推荐用于新项目。
NetShop软件特点介绍: 1、使用ASP.Net(c#)2.0、多层结构开发 2、前台设计不采用任何.NET内置控件读取数据,完全标签化模板处理,加快读取速度3、安全的数据添加删除读取操作,利用存储过程模式彻底防制SQL注入式攻击4、前台架构DIV+CSS兼容IE6,IE7,FF等,有利于搜索引挚收录5、后台内置强大的功能,整合多家网店系统的功能,加以优化。6、支持三种类型的数据库:Acces
using System; using System.Linq; using System.Xml.Linq;class Program { static void Main() { XDocument doc = XDocument.Load("example.xml");
var comments = doc.Descendants().SelectMany(e => e.Nodes()) .OfType() .Select(c => c.Value); foreach (string comment in comments) { Console.WriteLine("注释内容: " + comment); } } }
说明:
- Descendants() 获取所有元素。
- SelectMany(e => e.Nodes()) 展开所有节点(包括注释)。
- OfType
- c.Value 获取注释文本。
注意事项
确保 XML 文件中确实包含注释,例如:
value
该注释会被正确读取为 "这是一个配置说明"。
基本上就这些方法,根据项目选择 XmlDocument 或 XDocument 均可,后者语法更简洁。注意注释节点不会被当作普通元素处理,必须显式提取。









