新闻中心
C# 如何删除xml文件中的指定节点
使用XmlDocument加载XML文件,通过XPath查找目标节点,调用父节点的RemoveChild方法删除并保存。示例删除id为102的Person节点,需注意节点为空判断、文件读写权限及XPath语法正确性。

在C#中删除XML文件中的指定节点,通常使用 XmlDocument 类来加载、查找并移除节点。下面是一个清晰的步骤说明和示例代码。
1. 加载XML文档
使用 XmlDocument 的 Load() 方法读取XML文件。
2. 查找要删除的节点
通过 SelectSingleNode() 或 SelectNodes() 配合XPath表达式来定位目标节点。
常见筛选方式:
- 按节点名称:
//NodeName - 按属性值:
//NodeName[@id='123'] - 按子元素内容:
//Person[Name='张三']
3. 删除节点
找到节点后,调用其父节点的 RemoveChild() 方法将其移除,然后保存文件。
云网OA
采用JSP开发的办公自动化产品、基于B/S结构,运行环境:JDK v1.5、Tomcat v5.5、MySQL v4.1,三者均为以上版本其他相关内容:可视化流程设计: 流程支持串签、会签和分支流程,可以设置流程节点的修改、删除权限,并可指定流程中各个用户在表单中可以填写的域。智能表单所见即所得设计: 智能设计,自动在数据库中生成表格,方便优化程序 公共交流: 集论坛、博客、聊天室于一体文件柜:C
0
查看详情
完整示例代码:
using System;
using System.Xml;
class Program
{
static void Main()
{
// 创建XML文档对象
XmlDocument doc = new XmlDocument();
// 加载XML文件
doc.Load("data.xml");
// 使用XPath查找要删除的节点(例如:删除 id 为 '102' 的 Person 节点)
XmlNode nodeToRemove = doc.SelectSingleNode("
;//Person[@id='102']");
if (nodeToRemove != null)
{
// 从其父节点中移除该节点
nodeToRemove.ParentNode.RemoveChild(nodeToRemove);
// 保存修改回文件
doc.S*e("data.xml");
Console.WriteLine("节点删除成功。");
}
else
{
Console.WriteLine("未找到指定节点。");
}
}
}
假设 data.xml 内容如下:
<People>
<Person id="101">
<Name>张三</Name>
</Person>
<Person id="102">
<Name>李四</Name>
</Person>
</People>
执行后,id为102的Person节点将被删除。
注意事项
- 确保程序有对XML文件的读写权限。
- 删除前建议先判断节点是否为null,避免异常。
- 如果要删除多个节点,可用 SelectNodes() 返回节点列表进行遍历删除。
- 注意XPath语法正确性,大小写敏感。
以上就是C# 如何删除xml文件中的指定节点的详细内容,更多请关注其它相关文章!
# 是一个
# 白银抖音seo搜索优化
# 蚂蚁网seo
# 福建企业网站推广工具
# 海西网站优化多少钱
# 宜昌seo公司选择火星
# 孝义全网营销推广
# 亚马逊推广营销方案
# 福永微博营销推广
# 南通网站建设方案外包
# 滨州网站百度快照优化
# 文档
# c#
# 其父
# 多线程
# 如何使用
# 表单
# 移除
# 加载
# 信号量
# 云网
# ai
# node
# xml删除节点
相关栏目:
【
科技资讯46185 】
【
网络学院92790 】
相关推荐:
必由学官网首页入口 必由学教师网页版登录指南
PHP URL参数传递与500错误调试指南
从J*aScript对象中精确提取指定属性的教程
网站内容防复制粘贴的实现策略与局限性
PHP高效扁平化嵌套数组:使用array_merge与数组解包操作符
UC浏览器官网入口2025最新 UC浏览器网页版正式地址
Windows10怎么开启存储感知 Windows10系统设置自动清理临时文件释放C盘空间【教程】
Bilibili动漫最新防封地址发布-Bilibili动漫2025年最稳正版入口推荐
生成rdflib自定义SPARQL函数:参数匹配与实践指南
Win11怎么隐藏桌面图标 Win11一键隐藏所有桌面元素及恢复显示
支付宝如何管理隐私设置_支付宝隐私保护的配置技巧
如何修改开机登录密码_Windows账户安全设置超详细教程【必学】
今日头条怎么同步内容到抖音_今日头条内容同步到抖音教程
谷歌学术网站直达地址 谷歌学术搜索网页版一键进入
J*aScript中高效管理与清空动态列表:避免循环陷阱
天眼查怎么看公司融资情况 天眼查企业融资历史查询步骤【攻略】
Adobe PDF表单中利用J*aScript解析与格式化日期组件的教程
Golang如何实现简单的Web表单_Golang表单提交与验证处理方法
一加Ace 6T支持全新明眸护眼:通过了最严苛的护眼小金标认证
Golang如何通过reflect操作map_Golang reflect map操作与遍历技巧
蛙漫安全无毒 官方认证的绿色入口
打开就能玩的植物大战僵尸 植物大战僵尸网页版传送门
解决J*aScript中重复选择项的确认对话框显示问题
Go语言中Map存储的结构体如何调用指针方法:深入解析与实践
蛙漫移动版在线看 蛙漫手机浏览器直达入口
CSS Flexbox如何实现多行排列_flex-wrap wrap自动换行显示
Win11怎么修改默认浏览器_Windows 11设置Chrome为默认
红果短剧网页版官网入口 官方最新网址发布
J*a递归快速排序中静态变量的状态管理与陷阱
php源码怎么看淘宝客系统_看php源码淘宝客系统技巧
QQ邮箱官方邮箱登录入口 QQ邮箱网页版快速访问
Win10如何开启蓝牙功能_Windows10找不到蓝牙开关解决方法
mcjs网页版在线存档 mcjs云存档登录入口
msn官网入口地址手机版 msn官方网站手机最新链接
限制HTML日期输入框的日期选择范围
漫蛙漫画官方主页入口 漫蛙MANWA网页直达访问链接
C++如何操作大型数据集_使用C++流式处理(Streaming)技术避免一次性加载大文件
神经网络二分类模型训练异常:高损失与完美验证准确率的排查与修正
内存疯狂猛猛涨价:主板销量直接腰斩!
支付宝如何设置安全保护_支付宝安全设置的全面教程
Python自定义类排序:解决lambda键值访问TypeError的实践指南
将HTML动态表格多行数据保存到Google Sheet的教程
“在文档元素之后找到了标记”是什么错误? 检查并修复XML中多个根元素的3个方法
J*a中实现Go语言select通道多路复用机制
poki网页游戏推荐_poki免费游戏平台入口
一加Ace 6T实拍样张首次公布!李杰:主摄实力完全看齐4K档性能旗舰
Highcharts 雷达图径向轴标签定制指南:利用多Y轴实现数值标注
vivo浏览器自带的下载器速度慢怎么办 vivo浏览器提升文件下载速度的技巧
必由学网页版入口 必由学官方平台直接访问
NetBeans Ant项目:自动化将资源文件复制到dist目录的教程


2025-11-01
浏览次数:次
返回列表
;//Person[@id='102']");
if (nodeToRemove != null)
{
// 从其父节点中移除该节点
nodeToRemove.ParentNode.RemoveChild(nodeToRemove);
// 保存修改回文件
doc.S*e("data.xml");
Console.WriteLine("节点删除成功。");
}
else
{
Console.WriteLine("未找到指定节点。");
}
}
}