XmlDocument 是 .NET 中用于中小型 XML 文档的 DOM 操作类,支持加载(文件/字符串/流)、XPath 查询(SelectNodes/SelectSingleNode)、节点创建与插入(需同文档)、保存(Save/OuterXml)及命名空间处理等完整功能。

XmlDocument 是 .NET 中操作 XML 的经典类,适合处理中小型 XML 文档,支持加载、查询、修改、保存等完整 DOM 操作。它基于内存树结构,用起来直观,但要注意不是流式解析(不适用于超大文件)。
加载 XML 数据
可以从字符串、文件或流中加载 XML:
- 从文件加载:
doc.Load("config.xml"); - 从字符串加载:
doc.LoadXml("<root><item>test</item></root>"); - 从 Stream 加载:
doc.Load(stream);
加载失败会抛出 XmlException,建议加 try-catch 处理格式错误。
查找和读取节点
常用方法有 SelectNodes() 和 SelectSingleNode(),支持 XPath 表达式:
- 查所有 name 元素:
doc.SelectNodes("//name") - 查第一个 user 节点下的 id:
doc.SelectSingleNode("/users/user[1]/id") - 读取属性值:
node.Attributes["id"]?.Value - 读取文本内容:
node.InnerText或node.FirstChild?.Value
注意:XPath 区分大小写,且默认不识别命名空间(如需处理带 ns 的 XML,得配 XmlNamespaceManager)。
创建和插入新节点
所有节点都需通过 XmlDocument 实例创建,不能直接 new:
标签: node app stream 配置文件 c# .net
还木有评论哦,快来抢沙发吧~