【问题标题】:How can I parse the information from this XML?如何解析此 XML 中的信息?
【发布时间】:2010-10-26 00:13:05
【问题描述】:

这是我要抓取的 XML 示例:

http://www.dreamincode.net/forums/xml.php?showuser=335389

请注意,contactinformation 标签有许多联系人元素,每个元素相似但具有不同的值。

例如,包含AIM内容的元素,如何获取与AIM内容元素同族的Value标签的内容?

这就是我卡住的地方。谢谢!

基本上:我需要找到 AIM 内容标签,记下它的位置,然后在同一个系列中找到 Value 元素。希望这能让问题更清楚

【问题讨论】:

    标签: c# xml linq-to-xml


    【解决方案1】:

    LINQToXML

    var doc = XDocument.Load(@"http://www.dreamincode.net/forums/xml.php?showuser=335389");
    var aimElements = doc.Descendants("contact").Where(a=>a.Element("title").Value == "AIM").Select(a=>a.Element("value").Value);
    

    这将为您提供一个字符串列表,其中包含具有标题 AIM 的联系人的 value 元素的值,如果您认为应该只有 1 个,您可以执行 First() 或 FirstOrDefault

    【讨论】:

    • 太棒了!我喜欢技术融合(LINQ 而不是 XPath)。
    【解决方案2】:

    使用如下所示的 xpath 将为您提供联系人/值节点,其中联系人/标题为“AIM”:

    /ipb/profile/contactinformation/contact[title='AIM']/value
    

    【讨论】:

      【解决方案3】:

      您是否尝试过解析 XML 而不是“抓取”它?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-10-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多