我知道这有点愚蠢,但我正在转换的 XML 有时有一个元素,它只是一个或两个空格。像这样:
Dim es1 = <Text> </Text>
当我尝试获取
.Value
时像这样的Dim resultText = es1.Value
,它只是一个空字符串。如果元素中有前导和/或尾随空格以及至少一个其他字符,这不是问题。有没有办法强制
.Value
如果仅此而已,给我留白吗?
最佳答案
使用 LoadOptions.PreserveWhitespace
当您解析 XML 时。 C# 示例代码:
using System;
using System.Xml.Linq;
class Test
{
static void Main()
{
string xml = "<Foo> </Foo>";
XElement withWhitespace = XElement.Parse(xml,
LoadOptions.PreserveWhitespace);
Console.WriteLine(withWhitespace.Value.Length); // Prints 1
XElement withoutWhitespace = XElement.Parse(xml);
Console.WriteLine(withoutWhitespace.Value.Length); // Prints 0
}
}
(显然,这在使用
Load
以及 Parse
等时可用)我不知道这如何与 VB XML 文字相适应,但我会假设通常您实际上是从文件等中解析:)
关于.net - 在 XElement 中获取空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5811755/