XML文件结构如下:<?xml version="1.0" encoding="utf-8"?>
<Database name="SQL Server" type="Standard Security">
<Provider>sqloledb</Provider>
<DataSource>(local)</DataSource>
<InitialCatalog>pubs</InitialCatalog>
<UserId>sa</UserId>
<Password>123456</Password>
</Database>
<Database name="SQL Server" type="Standard Security">
<Provider>sqloledb</Provider>
<DataSource>(local)</DataSource>
<InitialCatalog>pubs</InitialCatalog>
<UserId>sa</UserId>
<Password>123456</Password>
</Database>
解决方案 »
- 谁有代码格式化的 控件或工具 代码太乱了格式
- 请问vb中如何调用dll和com能否分别给出一个例子,万分感谢了
- 提问~!请大家踊跃回答,VB小问题~!谢谢
- 用sendmessage发送什么消息可以触发OLEDragDrop事件?
- 一调用Printer.Enddoc,打印纸就走很长一截
- 万年历奖100分
- 各位老师,我做的程序为什么退出不彻底?
- Datagrid控件中输入时如何实现敲回车后光标自动换行?
- 在VB中如何对文件解压?
- 有关于ADO中的IF RST.BOF IF RST.EOF的应用的查询的问题!
- 请问怎样把文本文件转为位图,來者有分
- 自定义控件的高手请进,关于setwindowlong、sendmessage的问题。
Private root As IXMLDOMElement
Private nodeList As IXMLDOMNodeList
Private node As IXMLDOMNode ……(省略) Set root = xmlDocument.documentElement
Set nodeList = root.selectNodes("Database")
Set node = nodeList.Item(1)
~~~~~~~~~~~~~~~~~~~~~~~~~~~执行这步后,node的值是Nothing,应该就错在这里了 SelectNodeValue = node.Text
Set xmlDoc = CreateObject("Msxml2.DOMDocument")
xmlDoc.async = False
xmlDoc.validateOnParse = False
If xmlDoc.Load("c:\ToWord.xml") = False Then
Set parseError = xmlDoc.parseError
MsgBox "Load xml failure." & vbCrLf & parseError.reason
Exit Sub
End IfSet nodeList = xmlDoc.documentElement.selectSingleNode("//Database").childNodes
msgbox nodeList.Item(0).textEnd Sub
那如果不是指定Item的Index呢,而是选取特定的Item,如何实现?
唉,自己搞清楚了,原来selectSingleNode(nodeName)就是选出指定节点的。原来NodeList在VB里没什么太大意义,遍历的时候才有用……
Set xmlDoc = CreateObject("Msxml2.DOMDocument")
xmlDoc.async = False
xmlDoc.validateOnParse = False
If xmlDoc.Load("c:\ToWord.xml") = False Then
Set parseError = xmlDoc.parseError
MsgBox "Load xml failure." & vbCrLf & parseError.reason
Exit Sub
End If
xmlDoc.setProperty "SelectionLanguage", "XPath"
Set node= xmlDoc.documentElement.selectSingleNode("//Database/Provider")
msgbox node.text
End Sub