如何解决使用.net核心获取结构中深入的XML属性
我有一个类似于以下内容的xml结构:
<?xml version="1.0" encoding="utf-8"?>
<!--The structure-->
<myXMLRoot>
<tree>
<category title="Title A">Hi</category>
</tree>
<tree>
<category title="Title B">Text</category>
</tree>
</myXMLRoot>
如果我知道上面的结构,什么是获取两个树节的类别标题的快速方法?
我想避免解析整个文件。
所以也许可以做到这一点:
var first = getXMLTitle("myXMLRoot/tree(0)/category[title]");
var second = getXMLTitle("myXMLRoot/tree(1)/category[title]");
我想要一些使用.NET核心深入链接到XML的东西。
解决方法
您可以使用此XPath。请看下面的代码
XPathDocument document = new XPathDocument(@"C:\somepath-to-xml\some-xml.xml");
var navigator = document.CreateNavigator();
var iterator = navigator.Select("myXMLRoot/tree/category/@title");
while (iterator.MoveNext())
{
Console.WriteLine(iterator.Current.Value);
}
此代码遍历所有标题。在示例中的小注释,您有一个小错误cateogyr
,但应该是category
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。