【发布时间】:2012-02-19 15:30:54
【问题描述】:
我试图弄清楚为什么某些文本中显然没有任何回车符,即使它看起来确实如此。我想知道当通过 XmlDocument(在 .net 4.0 中)进行 Xpath'ing 时是否调用 innerText 会去除回车符或其他字符。可能不是,但此时我正在寻找任何东西。
【问题讨论】:
我试图弄清楚为什么某些文本中显然没有任何回车符,即使它看起来确实如此。我想知道当通过 XmlDocument(在 .net 4.0 中)进行 Xpath'ing 时是否调用 innerText 会去除回车符或其他字符。可能不是,但此时我正在寻找任何东西。
【问题讨论】:
您没有显示任何代码,因此很难知道数据的来源。默认情况下,加载XmlDocument 时不保留无关紧要的空格。您可能想在加载前尝试将 XmlDocument.PreserveWhitespace 设置为 true。
如果这没有帮助,请发布一个简短但完整的程序来演示该问题。
【讨论】:
元素上的xml:space 是什么?如果您需要强制它保留重要空白以外的空白,则可以在调用Load 或LoadXML 之前将PreserveWhitespace 设置为true。
请注意这一点,因为在大多数情况下,编写 XML 的人会期望遵循用于空格的正常 XML 规则。更糟糕的是,如果您通过使用 PreserveWhitespace 使用的非标准规则获得“适合我的”,那么您没有理由期望其他人按照您的意图解析它。
【讨论】: