我有一个xml如下
< Image>ImageValue1
<Type>png</Type>
<Value>ImageValue1</ Value>
</ Image>
这里ImageValue1存在于两个地方。我想删除作为父节点的Image节点的innerText。我正在使用下面的代码
XmlNode customImageNode = imagedoc.SelectSingleNode("//Image");
customImageNode.InnerText = string.empty;
但这也是清除子节点。请让我知道如何清除此测试。寻找通用解决方案。
答案 0 :(得分:3)
我相信您需要做的只是选择Image
节点的 text 节点。你这样做:
XmlNode customImageNodeTextNode = imageDoc.SelectSingleNode("//Image/text()");
customImageNodeTextNode.InnerText = string.Empty;
我刚刚测试了上面的代码,它对我有用。祝你好运!
答案 1 :(得分:1)
尝试做:
customImageNode.Value= string.empty;
更新:
抱歉这个错误。它应该是这样的:customImageNode.RemoveChild(customImageNode.FirstChild);
,因为在这种情况下节点的内部文本是它的第一个孩子。我已经检查了它并且有效。