【发布时间】:2014-03-31 10:41:49
【问题描述】:
我的 XML 看起来像这样(从文件中读取):
<root>
<date month="November" year="2001"/>
</root>
我正在尝试编辑日期元素中的年份属性值,假设为“3000”。 我正在使用 XmlDocument 和 XmlReader 类来编辑此属性,如下所示:
XmlDocument xml = new XmlDocument();
using (XmlReader reader = XmlReader.Create(xmlPath))
xml.Load(reader);
问题是,XmlReader 像这样读取 XML:
<root>
<date month="November" year="2001"> </date>
</root>
意思是,它将结束元素添加到日期元素。 稍后我将使用 Save 方法保存编辑后的 XML。
我需要最终的 XML 与原始 XML 一样的短标签。 有没有办法在不添加关闭元素的情况下使用 XmlReader?
【问题讨论】:
-
如果你只是阅读,那么你可以使用
reader.IsEmptyElement来检查;但从根本上说,它们的意思是一样的 -
我正在阅读、编辑和保存。我知道它们的意思是一样的,但我需要编辑后的 XML 与原始元素一样具有空元素。