我正在解析具有如下条目的 Xml 数据:
<item name="UserText" type_name="gh_string" type_code="10"> </item>
我应该将 6 个空格作为字符串读取,但 System.Xml.XmlNode 的 InnerText 和 InnerXml 值都是零长度字符串。
有什么方法可以获取现有文件中的空白数据,将来我需要做什么来防止出现这种问题?
最佳答案
XML 会忽略该空格。如果你需要保留它,你应该在你的元素中插入一个 xml:space="preserve"
属性。像这样的东西,我认为它会在使用 XML 的任何地方保留你的空白。
<item xml:space="preserve" name="UserText" type_name="gh_string" type_code="10"> </item>
另一个适用于 LINQ-to-XML 的选项是使用 PreserveWhitespace 加载选项。示例:
XElement element = XElement.Parse(xml, LoadOptions.PreserveWhitespace);
您还应该能够将空格包装在 CData 标记中,尚未测试。
关于c# - 以空格作为 InnerText 的 Xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2783693/