使用xpath获取xml中节点

        获取xml中的节点,可以使用XmlNode.SelectSingleNode()方法,不过针对xml是否存在命名空间,XmlNode提供了2种方法来获取

目录

基本情况:没有命名空间

重点:目标节点有n个命名空间

        xpath全路径:

        xpath半路径:   ----难点             

 tips


基本情况:没有命名空间

        xml文件

<?xml version="1.0" encoding="UTF-8"?>
<students>
	<student>
		<name>zhangsan></name>
		<age>11</age>
	</student>
	<student>
		<name>lisi></name>
		<age>22</age>
	</student>
</students>

        获取节点的代码:

        public void getXmlNode(string xmlStr,string xpath)
        {
            XmlDocument xmlD = new XmlDocument();
            xmlD.LoadXml(xmlStr);

            //测试用,获取xmlD下第一个name节点
            xpath = "//name";
            XmlNode xn = xmlD.SelectSingleNode(xpath);

            string nodeXml = xn.InnerXml;
        }

重点:目标节点有n个命名空间

        对于有命名空间的xml,要根据自己编写的xpath路径判断判断有效命名空间,将有效命名空间添加到XmlNamespaceManager中,xpa

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值