XML文件如下:
<root>
<a>
<b>1</b>
<c>c1</c>
</a>
<a>
<b>2</b>
<c>c2</c>
</a>
</root>如何获取节点<b>=1的<a>节点的所有子节点,即要获得:
<a>
<b>1</b>
<c>c1</c>
</a>SelectSingleNode()里面要怎么写?
<root>
<a>
<b>1</b>
<c>c1</c>
</a>
<a>
<b>2</b>
<c>c2</c>
</a>
</root>如何获取节点<b>=1的<a>节点的所有子节点,即要获得:
<a>
<b>1</b>
<c>c1</c>
</a>SelectSingleNode()里面要怎么写?
解决方案 »
- VC#2005中如何加入一个。DLL 文件(动态连接库)
- c# 中执行dos语句
- 请问使用 MailMessage 和 SmtpMail 发送邮件时:
- ibatis连数据库错误:unable to open connection to "Oracle,Microsoft provider v1.0.5000.0
- 怎么读取内存地址的数据?
- 如何取得枚举类型结构的元素数量?
- 错误:当前上下文中不存在名称“IsTextChanged”
- 如何编写域名解析方面的程序
- 代码运行错误!!请帮忙解决!!高分送上。
- C#串口通信实时数据统计
- 我创建了一张背景图片Size很大, 目的是要转TIF CCITT4编法(黑白图) ,速度超级慢
- C#用流实现DataGridView中数据Excel格式的导出
void Main()
{
string str =@"<root>
<a>
<b>1</b>
<c>c1</c>
</a>
<a>
<b>2</b>
<c>c2</c>
</a>
</root>";
var data=XElement.Parse(str);
var query=from x in data.Descendants("a")
where x.Element("b").Value=="1"
select x;
}
<a>
<b>1</b>
<c>c1</c>
</a>
<a>
<b>2</b>
<c>c2</c>
</a>
</root>";
XmlDocument xml = new XmlDocument();
xml.LoadXml(str);
XmlNode node = xml.SelectSingleNode("//b[text()=2]").ParentNode;
XmlDocument doc = new XmlDocument();
doc.Load("E:\\test.xml");
XmlNodeList list = doc.SelectNodes(@"/root/a[b=1]");
foreach (XmlNode node in list)
Console.WriteLine(node.OuterXml);
<root>
<a d=1>
<b>1</b>
<c>c1</c>
</a>
<a d=2>
<b>2</b>
<c>c2</c>
</a>
</root>
xmldoc = new XmlDocument();
xmldoc.Load("file.xml");
XmlNodeList lst = xmldoc.SelectNodes("root/a[@d='1']");
这种用SelectNodes()通过制定属性值来获取节点的方法,感觉这种方法数据量大时用起来快点
foreach (XmlElement element in topm)
{
if (element.Name.ToLower() == "row")
{
//得到该节点的子节点
XmlNodeList nodelist = element.ChildNodes;
if (nodelist.Count > 0)
{
foreach (XmlElement el in nodelist)//读元素值
{
//光滑程度
XmlNodeList PolyMetalType = myXmlType.GetElementsByTagName("a");