如何修改XML中指定节点的值

sr48238480 2007-06-29 06:38:33
<?xml version="1.0" encoding="gb2312" ?>
- <menus>
- <menu>
<url>123.aspx</url>
<title>首页</title>
- <menu>
<url>321.aspx</url>
<title>修改</title>
</menu>
</menu>
- <menu>
<url>444.aspx</url>
<title>新闻</title>
- <menu>
<url>111.aspx</url>
<title>啊啊啊</title>
</menu>
- <menu>
<url>123</url>
<title>新闻</title>
</menu>
- <menu>
<url>ddd</url>
<title>asdf</title>
</menu>
- <menu>
<url>ddd</url>
<title>sdf</title>
</menu>
</menu>
- <menu>
<url>23231</url>
<title>123</title>
</menu>
</menus>
我想删除首页节点下面的修改节点,该如何做?
...全文
296 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
BearRui 2007-07-03
  • 打赏
  • 举报
回复
要删除哪个节点,动态组合"//title[text()='修改']"这段字符串就行了啊。

sr48238480 2007-07-02
  • 打赏
  • 举报
回复
这样解决太没有普遍性了吧?!要是我要删除的是中间的那个节点,并且第一个节点的子节点也有修改怎么办?谁能给个具有普遍性的答案好么?!
- <menus>
- <menu>
<url>123.aspx</url>
<title>首页</title>
- <menu>
<url>321.aspx</url>
<title>修改</title>
</menu>
</menu>
- <menu>
<url>444.aspx</url>
<title>新闻</title>
<menu>
<url>123.aspx</url>
<title>修改</title>
</menu>
- <menu>
- <menu>
<url>111.aspx</url>
<title>啊啊啊</title>
</menu>
</menus>
比如我要删除第二个修改节点。
BearRui 2007-06-30
  • 打赏
  • 举报
回复
try:

XmlNode node = doc.SelectSingleNode("//title[text()='修改']");
node.ParentNode.RemoveChild(node);

如果上面的不行再试试这个,我不太记的xpath的语法了。
XmlNode node = doc.SelectSingleNode("//title/text()='修改'");
sr48238480 2007-06-30
  • 打赏
  • 举报
回复
我查了很多
XmlNodeList node = doc.SelectSingleNode("menus").ChildNodes;
foreach (XmlNode xn in node)
{
if (xn["title"].InnerText == 节点)
{
root.RemoveChild(xn);
}
}可以查询首页节点
因为<url>也是子节点,无法循环到修改这个子节点。很是恼火。我在网上的看一些都是上层只有属性。确实可以循环下来。谁能帮下我?
极客行天下 2007-06-30
  • 打赏
  • 举报
回复
XmlDocument doc = new XmlDocument();
doc.Load(MapPath("~/test.xml"));
...
XmlDocument提供了丰富的方法,你查看一下msdn
sr48238480 2007-06-30
  • 打赏
  • 举报
回复
没人知道么?!!!!!我是新手大家帮助下撒

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧