IXMLDOMNode类
IXMLDOMNode类描述了一个节点,该类提供了一系列用于搜索和操纵XML文档的属性和方法。 selectSingleNode 方法用于搜索指定节点的后代,用于搜索指定节点路径的语言称为XPATH,XPATH非常棘手,本文就不详细说明其规范了。下面我们将介绍两个对搜索子节点有特别有用并且简单的方法。
在给selectsingleNode方法中输入子节点的名字,该方法将在节点的子节点进行精确匹配搜索。如果在输入的字符串前面加上".//",那么将搜索节点的全部后代。
' Search for a child node named "LastName." Set last_name_node = address_node.selectSingleNode("LastName")
' Search for any descendant named "LastName." Set last_name_node = address_node.selectSingleNode(".//LastName") |
下面列出了IXMLDOMNode对象的部分非常有用的属性:
attributes.节点属性集合
nodeName.节点的标记名
nodeTypeString.节点的类型
ownerDocument.返回DOMDocument对象包含的节点
text.表示节点包含的文本内容。如果该节点包含其他节点,那么text代表了所有节点的文本内容的组合。
xml.给出了节点的xml内容,例如:"<FirstName>Rod</FirstName>".
ChildNodes集合包含了节点的子节点。要给节点增加一个子节点,首先必须给使用DOMDocument对象的节点创建方法,然后将这个新建的节点加入到父节点的childNodes集合中。下面的代码展示了创建一个新的子节点的子程序,并使用父节点的appendChild方法将其加入到父节点中:
' Add a new node to the indicated parent node. Private Sub CreateNode(ByVal indent As Integer, _ ByVal parent As IXMLDOMNode, ByVal node_name As String, _ ByVal node_value As String) Dim new_node As IXMLDOMNode
' Create the new node. Set new_node = parent.ownerDocument.createElement(node_name)
' Set the node's text value. new_node.Text = node_value
' Add the node to the parent. parent.appendChild new_node End Sub |
SaveValues 程序
现在我们可以使用XML创建一个简单的程序(如图1),其值存储到XML文件中,在程序开始运行时,程序从VALUE.XML文件中加载数据,在程序运行结束时,将程序中的现行值存入VALUE.XML文件中。
下面的代码是显示了VALUE.XML文件的结构:
<Values> <FirstName>Rod</FirstName> <LastName>Stephens</LastName> <Street>1234 Programmer Place</Street> <City>Bugsville</City> <State>CO</State> <Zip>80276</Zip> </Values> |
List1显示了怎样编写SaveValues,当载入表单时,form_load事件触发LoadValues子程序。
LoadValues创建了一个名为xml_document的DOMDocument对象,然后载入xml文件,使用selectSingleNode方法查找名为values的节点,然后使用GetNodeValue方法获得从value节点后代中得到的值。
GetNodeValue使用value节点的selectSingleNode方法寻找目标节点,如果节点不存在函数将返回一个缺省值,如果找到这个节点GetNodeValue将返回该节点的text值。对于value.xml文件中的数据节点,text仅仅是包含在节点中的文本内容。
当窗体卸载时触发form_unload事件,unload事件调用SaveValues子程序。程序创建一个新的DOMDocument对象,该对象创建一个新的名为value的节点,然后用文档的appendChild方法将节点添加到文档中。
 
2/2 首页 上一页 1 2 |