知识大全 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文档 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 代码如下&
C#来创建和读取XML文档 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 扩展标记语言XML(e
XPath查询XML文档的注意事项 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!老鼠与人最好的排列
使用PHP5.0轻松解析XML文档(1) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 用sax
对XML文档进行添、删、改、查的程序 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &n
利用XSL和ASP实现XML文档在线编辑 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 本文通过
C#实现在Excel文档中搜索文本 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!打开Excel的V
用C#在Word文档中搜索文本 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在word应用程序
C#编程实现在Excel文档中搜索文本 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!lishixi
XML开发入门基础:XML元素 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! XML文档包含XM