如何阅读特定名称的所有XML节点,并把它们放到一个数组(或列表)? [英] How do I read all XML nodes of a specific name and put them into an array (or list)?
本文介绍了如何阅读特定名称的所有XML节点,并把它们放到一个数组(或列表)?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个XML:
<?xml version="1.0" encoding="UTF-8"?>
<ticket>
<comments type="array">
<comment>
<attachments type="array">
<attachment>
<url>I NEED WHATEVER IS IN HERE</url>
</attachment>
</attachments>
</comment>
<comment>
<attachments type="array">
<attachment>
<url>I NEED WHATEVER IS IN HERE</url>
</attachment>
</attachments>
<comment>
</comments>
</ticket>
我将如何去获得什么是URL标记内,并把它添加到&LT;列表&gt;
?我使用C#。
推荐答案
使用:
var result = XDocument.Parse(inputXml)
.DescendantNodes().OfType<XText>().Select(e => e.Value).ToList();
而使用XPath:
Or using XPath:
var result = ((IEnumerable)XDocument.Parse(input).XPathEvaluate("//text()"))
.Cast<XText>().ToList();
要仅从网址
元素的使用检索的文本:
To retrieve text only from url
element use:
var result = XDocument.Parse(inputXml)
.Descendants("url").Select(e => e.Value).ToList();
或改变以上的XPath: // URL /文()
这篇关于如何阅读特定名称的所有XML节点,并把它们放到一个数组(或列表)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文