首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取XML文件的部分数据

获取XML文件的部分数据
EN

Stack Overflow用户
提问于 2012-12-11 09:56:45
回答 1查看 1.7K关注 0票数 0

我有这个xml file,它包含来自tagchimp的信息,但是这个文件包含了很多信息的方法。如何只加载我需要的信息。我找到了一些代码:

代码语言:javascript
复制
XmlDocument doc = new XmlDocument();
doc.Load(path);
XmlElement root = doc.DocumentElement;
XmlNodeList nodes = root.SelectNodes("movie");

foreach (XmlNode node in nodes)
{
    string date = node["tagChimpID"].InnerText;
    string name = node["locked"].InnerText;
    Console.WriteLine("Id:" + date + " Locked:" + name);
} 

但是它只加载元素,而不是子元素,例如movieTitle或shortDescription

我找到了一个方法:

代码语言:javascript
复制
public static string Test(string path, XmlElement nodes)
    {
        string Name = "";
        string releaseDate = "";
        XmlNodeList xnList = nodes.SelectNodes("/items/movie");
        XmlNode eNode;
        foreach (XmlNode xn in xnList)
        {
             eNode = xn.SelectSingleNode("movieTags/info/movieTitle");

            if (eNode != null)
            {
                Name = eNode.InnerText;
            }


           eNode= xn.SelectSingleNode("movieTags/info/releaseDate");
                releaseDate = eNode.InnerText;
        }

但这并不是最实用的方法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-11 10:27:36

既然您正在使用.NET,那么您可能会花一些时间学习LINQ to XML,因为它听起来可以做您想要做的事情。

有很多在线文档,特别是如何执行各种基本查询以从特定节点获取信息:http://msdn.microsoft.com/en-us/library/bb943906.aspx

您也可以使用XPath获得相同的结果。

或者,您可以手动遍历节点,尽管您必须正确处理子节点(正如您已经发现的那样)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13812436

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档