zoukankan      html  css  js  c++  java
  • linq xml 转

    本文介绍如何使用 Descendants、Elements快速遍历XML节点

    首先准备一个简单但是常见的XML
    复制  保存<?xml version="1.0" encoding="utf-8" ?>
    <userSet>
      <userInfo id="1" name="Guozhijian">
        <profile>
          <phoneNumber>13818181818</phoneNumber>
          <country>China</country>
        </profile>
      </userInfo>
      <userInfo id="2" name="Zhenglanzhen">
        <profile>
          <phoneNumber>13919191919</phoneNumber>
          <country>Korea</country>
        </profile>
      </userInfo>
    </userSet><?xml version="1.0" encoding="utf-8" ?>
    <userSet>
      <userInfo id="1" name="Guozhijian">
        <profile>
          <phoneNumber>13818181818</phoneNumber>
          <country>China</country>
        </profile>
      </userInfo>
      <userInfo id="2" name="Zhenglanzhen">
        <profile>
          <phoneNumber>13919191919</phoneNumber>
          <country>Korea</country>
        </profile>
      </userInfo>
    </userSet>
    测试一:
    复制  保存private void Test1()
    {
        XDocument xdoc = XDocument.Load(@"UserSet.xml");
        var users = from u in xdoc.Descendants("userInfo")
                    where u.Attribute("id").Value == "1"
                    select u;
        foreach (var u in users)
        {
            string name = u.Attribute("name").Value;
            Console.WriteLine(name);
        }
    }
    输出结果为:
    Guozhijian

    测试二
    复制  保存private void Test2()
    {
        XDocument xdoc = XDocument.Load(@"UserSet.xml");
        var users = from u in xdoc.Root.Elements("userInfo")
                    where u.Element("profile").Element("phoneNumber").Value == "13919191919"
                    select u;
        foreach (var u in users)
        {
            string name = u.Attribute("name").Value;
            Console.WriteLine(name);
        }
    }
    输出结果为:
    Zhenglanzhen

  • 相关阅读:
    对象存储、块存储、文件系统存储概念与区别
    一款线程安全、基本功能齐全的STL
    Libevent源码分析—event_base_dispatch()
    Libevent源码分析—event_add()
    Libevent源码分析—从使用Libevent库开始
    Libevent源码分析—event_set()
    Libevent源码分析—event_init()
    利用Elasticsearch搭建全球域名解析记录
    Mysql Order By注入总结
    解决在ubuntu下requests 无法找到模块packages
  • 原文地址:https://www.cnblogs.com/eebb/p/1166208.html
Copyright © 2011-2022 走看看