C# 如果找到自动关闭标记,如何删除元素
我正在从第三方应用程序中提取一个xml文件,如下所示C# 如果找到自动关闭标记,如何删除元素,c#,C#,我正在从第三方应用程序中提取一个xml文件,如下所示 <round round_id="14208" name="5th Round" start_date="2013-09-06" end_date="2013-09-10" type="cup" groups="0" has_outgroup_matches="no" last_updated="2011-04-05 14:15:02"> --Some Data with more elements </round&
<round round_id="14208" name="5th Round" start_date="2013-09-06" end_date="2013-09-10" type="cup" groups="0" has_outgroup_matches="no" last_updated="2011-04-05 14:15:02">
--Some Data with more elements
</round>
<round round_id="14208" name="5th Round" start_date="2013-09-06" end_date="2013-09-10" type="cup" groups="0" has_outgroup_matches="no" last_updated="2011-04-05 14:15:02">
--Some Data with more elements
</round>
--某些数据包含更多元素
--某些数据包含更多元素
我的问题是,有时这个标签会带有这样的自动关闭标签
<round round_id="14208" name="5th Round" start_date="2013-09-06" end_date="2013-09-10" type="cup" groups="0" has_outgroup_matches="no" last_updated="2011-04-05 14:15:02"/>
我想检查自动关闭标记并删除元素
请帮帮我。
谢谢请看一看XMLDocument及其子节点属性。不幸的是,我不太了解发布任何代码。请看这里。。。。这是错误的XML,所以无法将其解析为XML,我相信您将此文件解析为纯文本,那么如何搜索
结束标记呢?用同样的方法搜索/>
对不起,我贴错了收尾标签。现在更正了添加的收尾标签
var file = "C:\\YourPath\\data.xml";
var doc = new XmlDocument();
doc.Load(file);
var nodes = doc.SelectNodes("/rounds/round");
foreach (XmlNode item in nodes)
{
if (item.InnerXml == String.Empty)
{
item.ParentNode.RemoveChild(item);
}
}
doc.Save(file);