我想从XML文件中获取所有文本节点.
我怎样才能做到这一点?
示例输入:
<root>
<slide>
<Image>hi</Image>
<ImageContent>this</ImageContent>
<Thumbnail>is</Thumbnail>
<ThumbnailContent>A</ThumbnailContent>
</slide>
</root>
Run Code Online (Sandbox Code Playgroud)
预期产出:
hi this is A
Run Code Online (Sandbox Code Playgroud)
gwi*_*rrr 10
唯一的解决方案(到目前为止)枚举任何xml中的所有文本节点,无论其结构如何:
string input = @"
<root>
<slide>
<Image>hi</Image>
<ImageContent>this</ImageContent>
<Thumbnail>is</Thumbnail>
<ThumbnailContent>A</ThumbnailContent>
</slide>
</root>";
foreach (XText text in (IEnumerable)XDocument.Parse(input).XPathEvaluate("//*/text()"))
{
Console.WriteLine(text.Value);
}
Run Code Online (Sandbox Code Playgroud)
编辑:如果你想从文件加载xml然后使用XDocument.Load.