我想查取路径
XmlNodeList yearRpt_nodes = docXml.SelectNodes("/Describe/Report/Year2006/ReportType") //这样写只能取到第一个节点
Year2006/ReportType 下面的所有节点集合,可是节点的ID 是变化的,请问用方法SelectNodes(XPath)中的,XPath 应该怎么写?
或是有什么其他方法?Xml 文件如下<?xml version="1.0" encoding="utf-8" ?>
<Describe>
<Report>
<Year2005>
<StaticRows Count="6" />
<ReportType>
<R2C3 Code="-0000" Colnum="C3" isYRpt="false" />
<R2C4 Code="-0000" Colnum="C4" isYRpt="false" />
<R3C3 Code="-0001" Colnum="C3" isYRpt="false" />
<R3C4 Code="-0001" Colnum="C4" isYRpt="false" />
<R4C3 Code="01101" Colnum="C3" isYRpt="true" />
<R4C4 Code="01101" Colnum="C4" isYRpt="true" />
</ReportType>
</Year2005>
<Year2006>
<StaticRows Count="6" />
<ReportType>
<R2C3 Code="-0000" Colnum="C3" isYRpt="false" />
<R2C4 Code="-0000" Colnum="C4" isYRpt="false" />
<R3C3 Code="-0001" Colnum="C3" isYRpt="false" />
<R3C4 Code="-0001" Colnum="C4" isYRpt="false" />
<R4C3 Code="01102" Colnum="C3" isYRpt="true" />
<R4C4 Code="01102" Colnum="C4" isYRpt="true" />
</ReportType>
</Year2006>
</Report>
</Describe>
XmlNodeList yearRpt_nodes = docXml.SelectNodes("/Describe/Report/Year2006/ReportType") //这样写只能取到第一个节点
Year2006/ReportType 下面的所有节点集合,可是节点的ID 是变化的,请问用方法SelectNodes(XPath)中的,XPath 应该怎么写?
或是有什么其他方法?Xml 文件如下<?xml version="1.0" encoding="utf-8" ?>
<Describe>
<Report>
<Year2005>
<StaticRows Count="6" />
<ReportType>
<R2C3 Code="-0000" Colnum="C3" isYRpt="false" />
<R2C4 Code="-0000" Colnum="C4" isYRpt="false" />
<R3C3 Code="-0001" Colnum="C3" isYRpt="false" />
<R3C4 Code="-0001" Colnum="C4" isYRpt="false" />
<R4C3 Code="01101" Colnum="C3" isYRpt="true" />
<R4C4 Code="01101" Colnum="C4" isYRpt="true" />
</ReportType>
</Year2005>
<Year2006>
<StaticRows Count="6" />
<ReportType>
<R2C3 Code="-0000" Colnum="C3" isYRpt="false" />
<R2C4 Code="-0000" Colnum="C4" isYRpt="false" />
<R3C3 Code="-0001" Colnum="C3" isYRpt="false" />
<R3C4 Code="-0001" Colnum="C4" isYRpt="false" />
<R4C3 Code="01102" Colnum="C3" isYRpt="true" />
<R4C4 Code="01102" Colnum="C4" isYRpt="true" />
</ReportType>
</Year2006>
</Report>
</Describe>
解决方案 »
- 请问怎么动态选择上传excel文件?
- <link rel="stylesheet" type="text/css" id="dd" href="../css/demo.css" />
- |zyciis| 一个超奇怪的问题 .NET连接不到SQL2000数据库 大家快来看看啊 急死人了
- 关于远程调试的问题
- 问一个比较奇怪的问题,关于IHttpHandlers?
- 在线急等,那里能下载动网新闻系统。
- 为什么我连接数据库的时候出错:未在本地计算机上注册“Microsoft.Jet.4.0”提供程序
- public void aa(){}里面能不能再定义一个bb()方法?
- repeater
- datalist分页问题---footer中分页的数字不见了???
- ASP.NET 2.0 中CSS无效了,怎么解决?
- 为什么后台用VB.NET的比C#的比较少!
XmlElement root = doc.DocumentElement;
nodeList = root.SelectNodes("/bookstore/book/@bk:ISBN", nsmgr);
foreach (XmlNode isbn in nodeList){
}
你要加foreach (XmlNode isbn in nodeList)这句啊!
docXml.SelectNodes("/Describe/Report/Year2006/ReportType") 其实就是取所有ReportType下的节点啊!
string ID="TreeNode1";
XmlNodeList yearRpt_nodes = docXml.SelectNodes("//"+ID+"/*")参考资料:<?xml version="1.0" encoding="UTF-8"?>
<HD>
<disk name="C">
<capacity>8G</capacity>
<directories>200</directories>
<files>1580</files>
</disk>
<disk name="D">
<capacity>10G</capacity>
<directories>500</directories>
<files>3000</files>
</disk>
</HD>你在XML文档中使用位置路径表达式来查找信息,这些表达式有很多种组成方式。结点元素的查找是你将要碰到的最频繁的查找方式。在上面这个XML文档例子中,根HD包含disk结点。你可以使用路径来查找这些结点,用正斜杠(/)来分隔子结点,返回所有与模式相匹配的元素。下面的XPATH 语句返回所有的disk元素:/HD/disk"*"代表"全部"的意思。/HD/* 代表HD下的全部节点。下面的XPATH将返回任意节点下的名称为disk的全部节点://disk下面的XPATH将返回名称为disk,name属性为'C'的全部节点:/HD/disk[@name='C']节点的附加元素,比如属性,函数等都要用方括号扩起来,属性前面要加上@号下面的XPATH将返回文件个数为1580的files节点:/HD/disk/files[text()='1580']大家注意到上面包含一个text(),这就是XPATH的一个函数,它的功能是取出当前节点的文本。下面的XPATH将返回文件个数为1580的分区:/HD/disk/files[text()='1580']/parent::*最后的parent::*表示这个元素的所有的父节点的集合。
XmlNodeList yearRpt_nodes=docXml.SelectNodes("/Describe/Report/Year2006/ReportType")这句,我监视了XmlNodeList ,实际上只是取了一个节点
你看看行不
yangsongshuang(团队精神) 的方法,需要单独先去singleNode 然后遍历XmlNode.ChildNodes 集合,直接去 XmlNodeList那样不行