Select XML Nodes by Name [C#]

简介: 原文 http://www.csharp-examples.net/xml-nodes-by-name/ To find nodes in an XML file you can use XPath expressions.

原文 http://www.csharp-examples.net/xml-nodes-by-name/

To find nodes in an XML file you can use XPath expressions. Method XmlNode.Selec­tNodes returns a list of nodes selected by the XPath string. Method XmlNode.Selec­tSingleNode finds the first node that matches the XPath string.

Suppose we have this XML file.

[XML]

<Names>
    <Name>
        <FirstName>John</FirstName>
        <LastName>Smith</LastName>
    </Name>
    <Name>
        <FirstName>James</FirstName>
        <LastName>White</LastName>
    </Name>
</Names>

To get all <Name> nodes use XPath expression /Names/Name. The first slash means that the <Names> node must be a root node. SelectNodes method returns collection XmlNodeList which will contain the <Name> nodes. To get value of sub node <FirstName> you can simply index XmlNode with the node name: xmlNode["FirstName"].InnerText. See the example below.

[C#]

XmlDocument xml = new XmlDocument();
xml.LoadXml(myXmlString); // suppose that myXmlString contains "<Names>...</Names>"

XmlNodeList xnList = xml.SelectNodes("/Names/Name");
foreach (XmlNode xn in xnList)
{
  string firstName = xn["FirstName"].InnerText;
  string lastName = xn["LastName"].InnerText;
  Console.WriteLine("Name: {0} {1}", firstName, lastName);
}

The output is:

Name: John Smith
Name: James White
目录
相关文章
|
1月前
|
存储 网络安全
Curl error (60): SSL peer certificate or SSH remote key was not OK for https://update.cs2c.com.cn/NS/V10/V10SP2/os/adv/lic/base/x86_64/repodata/repomd.xml [SSL: no alternative certificate subject name matches target host name 'update.cs2c.com.cn']
【10月更文挑战第30天】在尝试从麒麟软件仓库(ks10-adv-os)下载元数据时,遇到 SSL 证书验证问题。错误提示为:`Curl error (60): SSL peer certificate or SSH remote key was not OK`。可能原因包括证书不被信任、证书与域名不匹配或网络问题。解决方法包括检查网络连接、导入 SSL 证书、禁用 SSL 证书验证(不推荐)、联系仓库管理员、检查系统时间和尝试其他镜像。
275 1
|
XML JSON JavaScript
json转java实体,JSON和XML的区别比较,c#和c++的编译工具, 静态库和动态库的区别
json转java实体,JSON和XML的区别比较,c#和c++的编译工具, 静态库和动态库的区别
284 0
json转java实体,JSON和XML的区别比较,c#和c++的编译工具, 静态库和动态库的区别
|
XML C# 数据库
Excel与XML相互转换 - C# 简单实现方案
Excel与XML相互转换 - C# 简单实现方案 在日常工作中,我需要将数据存储在Excel中进行数据分析和处理,然后再将数据转换为XML格式进行跨平台的数据交换。网上搜索Excel转换为XML的实现方式大都是将Excel读取到数据库的DataSet,然后再写入到xml,代码比较繁琐而且要求运行环境安装数据库。
1599 0
|
XML PHP C#
操作XML文档遇到的XMLNS问题及解决方法 (C# 和 PHP)
原文:操作XML文档遇到的XMLNS问题及解决方法 (C# 和 PHP) 不管是用 PHP 还是 C#, 在操作 XML 的时候我们除了一个节点一个节点去取值之外, 还有一个非常方便的表达式, 就是 XPATH    而昨晚在使用 XPATH 的时候, 遇到一个问题, 改了一个晚上才搞定, 差点没吐血.
1035 0
|
XML C# 数据格式
C# POST 发送XML(返回string中可能出现中文乱码问题)
/// &lt;summary&gt; /// C# POST 发送XML /// &lt;/summary&gt; /// &lt;param name="url"&gt;目标Url&lt;/param&gt; /// &lt;param name="strPost"&gt;要Post的字符串(数据)&lt;/par
1608 0
|
XML C# 数据格式
C# 通过传入节点name及节点value,来删除XML相应节点
//通过传入节点name及节点value,来删除相应节点 public static string OperateXml(string keyInfo, string valueInfo) { if (File.Exists(filePath)) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc
877 0
|
XML C# 数据格式
操作xml格式的字符串的方法(C#)
操作xml格式的字符串,将其节点读取出来的方法一般有2中,第一种直接读取字符串,对字符串进行截取和判断;第二种方法是将字符串加载到C#自带的类XmlDocument里,这样就可以像才做DataTable一样进行操作了。
965 0
|
XML 数据采集 C#
【转】利用xml开发新闻发布系统(C#)
制作一个XML新闻发布系统1、什么是XML:XML是ExtensibleMarkupLanguage的简写,一种扩展性标识语言,是一种简单的数据存储语言,使用一系列简单的标记描述数据,XML易于在任何应用程序中读写数据,这使XML很快成为数据交换的唯一公共语言。
917 0