在 C# 中修改 XML 文件中的节点值,通常使用 XmlDocument 或 XDocument 类。下面介绍两种常用方法,你可以根据需要选择。
使用 XmlDocument 修改节点值
这是传统且常用的方式,适合处理结构清晰的 XML 文件。步骤如下:
加载 XML 文件 通过 XPath 查找目标节点 修改节点的 InnerText 或 Value 保存文件示例代码:
using System.Xml;
<p>XmlDocument doc = new XmlDocument();
doc.Load("example.xml"); // 加载文件</p><p>// 假设要修改 <person><name> 的值
XmlNode node = doc.SelectSingleNode("//person/name");
if (node != null)
{
node.InnerText = "新名字";
}</p><p>doc.Save("example.xml"); // 保存修改
使用 XDocument 修改节点值(LINQ to XML)
这是更现代的方法,语法更简洁,推荐用于新项目。步骤类似:
加载 XML 查询并定位节点 修改值并保存示例代码:
using System.Xml.Linq;
<p>XDocument doc = XDocument.Load("example.xml");</p><p>var element = doc.Descendants("name").FirstOrDefault();
if (element != null)
{
element.Value = "新名字";
}</p><p>doc.Save("example.xml");
注意事项
实际操作中需要注意以下几点: 确保文件路径正确,避免 FileNotFoundException 修改前检查节点是否存在,防止空引用异常 如果节点有多个,考虑是修改全部还是仅第一个 涉及属性值时,用 node["attr"] 或 element.Attribute("attr") 来修改基本上就这些。选哪种方式取决于你的开发环境和习惯。XmlDocument 更稳定,XDocument 更简洁。
