1.重要语法:
SelectNodes("item") //从当前节点的儿子节点中选择名称为 item 的节点。
SelectNodes("/item") //从根节点的儿子节点中选择名称为 item 的节点。
SelectNodes("//item") //从任意位置的节点上选择名称为 item 的节点。要重点突出这个任意位置,它不受当前节点的影响,也就是说假如当前节点是在第 100 层(有点夸张),也可以选择第一层的名称为 item 的节点。
SelectNodes(".") //选择当前节点
SelectNodes("..") //选择当前节点的父节点。
SelectNodes("//item[@name]") //在 SelectNodes("//item") 的基础上,增加了一个限制,就是要求拥有 name 属性。
SelectNodes("//item[@name='111']") //在 SelectNodes("//item[@name]") 的基础上,增加了一个限制,就是要求 name 属性值为 111。注意语法中有引号;如果没有 引号,则表示是数字类型,对于数字类型可以使用大于号、小于号等,比如:SelectNodes("//item[@v>333]")。
SelectNodes("//item[1]") //选择第一个 item,注意是第一个,不是第二个。还有这里是指亲兄弟间的第一个 item,也就是说:父级若有三个 item,则选择第一个 ;若父级第二个 item 的有两个名称同样为 item 的儿子,则第一个儿子会被选择出来;若父级第三个 item 的也有两个名称同样为 item 的儿子,则第一个儿子也会被选择出来……
SelectNodes("//item[last()-1]") //倒数第二个节点,同样是指亲兄弟间的倒数第二个。
SelectNodes("//item[position()<=2]") //位置为第一和第二的节点(第一个节点的 position() 为 1),同样是指亲兄弟间的位置。
SelectNodes("//@name")
SelectNodes("/root/item/@name") //取 item 的 name 属性。选择 name 属性,注意这下选择的是属性,而不是节点了。用 Value 属性获取属性集合的属性值。
SelectNodes("/root/item") //根节点 root 下的 item 儿子节点。
SelectNodes("/root//item") //根节点 root 下的不管是儿子、孙子、重孙子……,只要是名称为 item 的统统选取出来。
2.通配符:
可用 * 表示任意节点名称,比如 SelectNodes("/channel/*/item");
用 @* 表示任意属性;
用 node() 表示任意类型的节点;
用 text() 表示文本类型的节点,实际上也就是表示取文本节点(元素节点下面是文本节点,文本节点下面才是文字)。
3.运算符:
| 表示或。SelectNodes("//item|//channel"),选择 item 或 channel 节点。
分享到:
相关推荐
例如,如果你有一个XML文档,并且想要找到所有的`<item>`元素,你可以使用`XPath.selectNodes("/root/item")`。这个方法对处理大量结果非常有用,因为返回的结果集可以方便地进行迭代。 2. `XPath.selectSingleNode...
using System.Xml.Linq; // 加载XML文档 XDocument xdoc = XDocument.Load("example.xml"); // 使用LINQ查询 var children = from child in xdoc.Descendants("Child") select child; foreach (var child in ...
首先,需要引入`System.Xml.Linq`命名空间: ```vbnet Imports System.Xml.Linq ``` 然后,可以使用`XDocument`类来加载和查询XML: ```vbnet Dim doc As XDocument = XDocument.Load("path_to_your_xml_file.xml...
读取XML文档通常涉及解析XML文件并获取其中的数据。下面是一个简单的例子,展示了如何使用DOM4J库读取XML文档中的特定节点: ```java import java.io.File; import org.dom4j.Document; import org.dom4j.Element; ...
List<Element> child1Elements = xpath.selectNodes(rootElement, "//child1"); for (Element element : child1Elements) { System.out.println(element.getText()); } ``` 总之,JDOM.jar为Java开发者提供了一个...
- 访问属性:通过`element.attributeIterator()`迭代元素的属性,然后使用`getName()`和`getValue()`获取属性名和值。 - 获取文本内容:使用`element.getText()`获取元素的文本内容。 5. **查询XML** DOM4J支持...
3. 查询XML数据:使用DOM解析器提供的API,如`SelectNodes()`或`SelectSingleNode()`,通过XPath表达式来定位和获取XML节点。 例如: ```powerbuilder object xmlDoc : XMLDocument string strFilePath = "C:\...
Set nodes = xml.documentElement.selectNodes("//item") For Each node In nodes ' 处理每个item节点 Next ``` 3. Element对象:代表XML文档中的元素节点,可以通过Node对象的`nodeName`和`nodeValue`属性获取...
本教程“XML.rar_Xml connect_show”将重点介绍如何使用XML与C#进行连接和交互,从而帮助开发者理解如何在C#环境中有效地利用XML的数据存储和交换能力。 首先,XML文件结构清晰,具有自解释性,这使得它成为数据...
在Java中,可以使用`javax.xml.parsers.DocumentBuilderFactory`和`org.w3c.dom.Document`来解析XML并获取属性值。 3. SAX解析器:SAX(Simple API for XML)是一种基于事件驱动的解析方式,适用于处理大型XML文档...
1. 对于 `XmlDocument`,你可以使用 `Attributes` 属性来访问元素的属性集合,然后通过属性名获取属性值: ```csharp XmlNode node = xmlDoc.SelectSingleNode("//element[@attr1]"); XmlAttribute attr1 = node....
Dim nodeList As XmlNodeList = xmlDoc.SelectNodes("/root/childElement") For Each node AsXmlNode In nodeList Console.WriteLine(node.InnerText) Next ``` 在Visual Basic中,XML LINQ(Language Integrated ...
2. 访问元素:通过Element的`getRootElement()`获取根元素,`element.element(name)`获取指定名称的子元素,`element.elements()`获取所有子元素。 3. 获取属性:`Attribute attribute = element.attribute(name);`...
获取到`Element`后,可以使用`element.element()`或`element.elements()`遍历子元素,`element.attribute()`获取属性,`element.getText()`获取元素内的文本。 ```java List<Element> childElements = root...
例如,`element.attribute("attrName")`获取指定名称的属性值,`element.getText()`获取元素的文本内容。 4. **修改和创建元素** DOM4J不仅支持解析,还允许我们修改和创建XML结构。可以使用`element.addElement(...
- 调用`Element.attributeValue()`或`Element.attribute()`方法获取指定属性的值。 - **获取元素文本值**: - 通过`Element.getText()`方法获取元素的文本值。 #### 三、示例代码分析 根据提供的部分代码示例,...
- 获取属性值:`string attrValue = attribute.Value;` 8. XPath查询: - XPath是一种强大的查询XML的方法,可以定位到XML文档中的特定节点。 - 示例:`XmlNodeList nodeList = doc.SelectNodes("//elementName...
XML(eXtensible Markup Language)是一种用于存储和传输数据的标记语言,它以其结构化、自解释性和可扩展性而被广泛应用于软件开发中。DOM(Document Object Model)是XML文档的一种表示方式,它将XML文档转换为一...
DOM4J中的Element类代表XML的元素节点,它提供了许多方法来获取子元素、属性等。比如,获取元素的子元素: ```java List<Element> childElements = rootElement.elements(); ``` 或者,获取元素的属性: ```java ...