知识大全 XML文档搜索使用小结

Posted 文件

篇首语:面对艰难困苦,懦弱者被磨去棱角;勇敢者将意志品质磨砺得更为坚强。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 XML文档搜索使用小结相关的知识,希望对你有一定的参考价值。

XML文档搜索使用小结  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  ///< summary>  ///< author>飞鹰< /author>  ///< description>本文介绍在 NET中查找XML节点的方法 < /desciption>  ///< copyright>ASP酷技术资讯网()< /copyright>  ///< /summary>

  大家在 NET中处理XML文档的时候 经常会需要找到文档中的某个节点的数据 要找到某个节点 有许多种方法 在这里我就把几种常用的方法给大家总结一下

  首先 我们要做的是要把一个XML文档装入到一个XmlDocument对象中去

  先引用几个名字空间:

  using System Xml;  using System Xml Xsl;  using System Xml XPath;

  这几个名字空间大家根据名字就知道它的意思了 我就不在这儿多说了 然后就是装入XML文件的代码 方法如下

  String xmlfile= c:/member xml ; //其中的xmlfile是你要载入的XML文件的路径   XmlDocument myDoc = new XmlDocument(); //定义一个XmlDocument对象   myDoc Load(xmlfile);

  这样 我们就有一个叫myDoc的XML文档 我们现在就来找这个文档中的一些节点 我们先来看这个XML文件的内容

  < ?xml version= encoding= UTF ?>  < members>  < member>  < name>Tim  < hobby>reading  < homepage>  < /member>  < member>  < name>Sandy  < hobby>learning  < /member>  < member>  < name>Shally  < hobby>tranlating  < /member>  < member>  < name>Christine  < hobby>working  < /member>  < /members>

  我们现在可以用下面的方法找到name为tim的节点:

  myDoc ChildNodes Item( ) ChildNodes Item( ) FirstChild InnerText

  这个方法要求我们一层层向内找我们需要的数据 如果层次很多的话 做起来就会很费劲 也容易出错 幸好 NET给我们提供了另外一个方法SelectSingleNode和SelectNodes方法可以让我们直接找到所要的数据 比如 我们要找姓名为 Tim 的用户的hobby 我们可以用下面的方法

  myDoc SelectSingleNode ( //member[name= Tim ] ) ChildNodes Item( ) InnerText

  其中//代表里面任意层的子节点 这样我们就可以很快的找到所要的东西 SelectSingleNode是找到一个单一的节点 SelectNodes可以找到许多节点

  在XML中寻找某个子节点 大家都知道怎么做了 我们现在在一个特殊的XML文件 XSL文件中去找一个子节点 这个应该怎么实现呢?

  假设我现在有一个这样的XSL文件

  < ?xml version= encoding= gb ?>  < xsl:stylesheet version= xmlns:xsl= xmlns:fo= >  < xsl:preserve space elements= codes />  < xsl:template match= / >  < xsl:apply templates/>  < /xsl:template>

  < xsl:template match= image >  < table align= @location >  < tr>  < td>  < img align= @location alt= text() >  < xsl:attribute name= src > /FTP_Magazine/FTP_Issue/  < /img>  < /td>  < /tr>  < tr>  < td>  < center>  < xsl:apply templates/>  < /center>  < /td>  < /tr>  < /table>  < /xsl:template>

  < /xsl:stylesheet>

  我们在中有两个变量 我们需要XSL文件在Transform XML文件的时候采用这两个变量 我们该如何去做呢?

  我所采取的方法是先把XSL文件作为XML Document装载进来 在使用之前 我们找到需要修改的节点 用我们的变量对其进行修改 这个时候我们查找这个节点的时候需要做些变动 代码如下

  XmlNamespaceManager nsmanager = new XmlNamespaceManager(xslDoc NameTable);  nsmanager AddNamespace( xsl );  xslDoc SelectSingleNode( //xsl:attribute[@name= src ] nsmanager) InnerXml = 你所需要输给的变量

  也就是说对于类似 /FTP_Magazine/FTP_Issue/这样的节点 在我们查找以前 我们需要定义一个XmlNamespaceManager 用它我们就可以找到我们所需要的节点

cha138/Article/program/ASP/201311/21822

相关参考

知识大全 用XmlDocument创建XML文档

用XmlDocument创建XML文档  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  代码如下&

知识大全 C#来创建和读取XML文档

C#来创建和读取XML文档  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  扩展标记语言XML(e

知识大全 XPath查询XML文档的注意事项

XPath查询XML文档的注意事项  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!老鼠与人最好的排列

知识大全 使用PHP 5.0 轻松解析XML文档(1)

使用PHP5.0轻松解析XML文档(1)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  用sax

知识大全 对XML文档进行添、删、改、查的程序

对XML文档进行添、删、改、查的程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &n

知识大全 利用XSL和ASP实现XML文档在线编辑

利用XSL和ASP实现XML文档在线编辑  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  本文通过

知识大全 C#实现在Excel文档中搜索文本

C#实现在Excel文档中搜索文本  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!打开Excel的V

知识大全 用C#在Word文档中搜索文本

用C#在Word文档中搜索文本  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在word应用程序

知识大全 C#编程实现在Excel文档中搜索文本

C#编程实现在Excel文档中搜索文本  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!lishixi

知识大全 XML 元素

XML开发入门基础:XML元素  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  XML文档包含XM