我是 XML 新手,在将 XML 中的 2 个值与相同的标签名称组合时遇到问题。
XML 示例,
<point>
<ref>
<text>My name</text>
</ref>
<ref>
<text>James</text>
</ref>
</point>
我想得到“我的名字詹姆斯”的输出......有什么想法或解决方案吗?
假设 Xml 文件位于C:\Temp\test.xml
string fileContent = File.ReadAllText(@"C:\Temp\test.xml");
var xml = XElement.Parse(fileContent);
//select every node with name 'text' regardless of their location in DOM
var values = xml.XPathSelectElements("//text")
.Select(element => element.Value);
string result = string.Join(" ", values);
Console.WriteLine (result);
印刷
我的名字詹姆斯
如果您想要 pathpoint/ref/text
中的特定节点,请使用下一个values
提取器
var values = xml.Descendants("ref")
.Elements()
.Where(node => node.Name == "text")
.Select(node => node.Value);