用vb读取XMl文件的数据的问题,大家看我错那了!

我先在vb-引用工程里引用了microsoft xml ,V4.0控件。
然后编写以下代码:
-------------------------------------
Private Sub CommandButton2_Click()
Dim xml_document As DOMDocument

Dim values_node As IXMLDOMNode

' 载入文件

Set xml_document = New DOMDocument
xml_document.Load p_AppPath & "F:\毕业设计\VCAD手册\卧式容器 XML.xml" '设置读取文件路径
If xml_document.documentElement Is Nothing Then

Exit Sub

End If
'寻找节点
Set values_node = xml_document.selectSingleNode("设计条件")
' 读取各个节点的值
TextBox2.Text = GetNodeValue(values_node, "公称直径", "???")
End Sub
-------------------------------------
运行以后显示的是“子过程或函数未定义”,我对microsoft xml ,V4.0一点也不懂,上面代码也是参照别人改的,不知道错在那里,请高人指点一下,谢谢啊,问题采纳再多加50分!
谢谢楼下的给这麽多详细的代码,呵呵,不过能不能给注释一下,我对xml那些属性一点也不懂!

嗯嗯,大致上要按照树的关系去找节点,读之

比如xml是

<root>
<design>
<r>5</r>
<shape>circle</shape>
</design>
<design>
<r>10</r>
<shape>triangle</shape>
</design>
</root>

Private moXMLDoc As MSXML2.DOMDocument

Private Sub Command1_Click()

Set moXMLDoc = New MSXML2.DOMDocument

If Not moXMLDoc.Load(App.Path & "\test.xml") Then
MsgBox "load error" & moXMLDoc.parseError.reason
Exit Sub
End If

Dim oXMLNodeList As MSXML2.IXMLDOMNodeList

'多个节点
Set oXMLNodeList = moXMLDoc.selectNodes("/root/design/shape")'****

Dim oXMLNode As MSXML2.IXMLDOMNode

For Each oXMLNode In oXMLNodeList
Debug.Print oXMLNode.Text
Next

'single node
Set oXMLNode = moXMLDoc.selectSingleNode("/root/design/shape")

Debug.Print oXMLNode.Text
End Sub
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-05-03
VB读XML挺痛苦的哈
VB.Net就很简单了

用vb读取XMl文件的数据的问题,大家看我错那了!
Private Sub Command1_Click()Set moXMLDoc = New MSXML2.DOMDocument If Not moXMLDoc.Load(App.Path & "\\test.xml") Then MsgBox "load error" & moXMLDoc.parseError.reason Exit Sub End If Dim oXMLNodeList As MSXML2.IXMLDOMNodeList '多个节点 Set oXMLNodeList = moXMLDoc.selectNo...

VB.net如何读取Xml文件内容,如下图:
先读取节点Match,然后读取节点内的各个属性值。再进行节点中的子节点SetSetName的读取,读取方式也是直接读取各个属性值。

vb 读取xml文件内容
Private Sub Command1_Click()Dim xDoc As Object Dim xmlFile As String Dim strWidth As String Dim strHeight As String Set xDoc = CreateObject("MSXML2.DOMDocument")xmlFile = "C:\\aa.xml"xDoc.Load xmlFile strWidth = xDoc.selectSingleNode("overlays").selectSingleNode("Info").Attributes...

vb 如何读取xml用vb6.0如何读取XML文件里的数据,并将它以树状显示出来...
Private Function GetValue(ByVal MKey As String, ByVal iStr As String) As String On Error GoTo er ar = Split(iStr, MKey)iStr = ar(1) '右侧字串 ar = Split(iStr, Chr(34))GetValue = ar(1)er:End Function '处理示例 Private Sub Command1_Click()'示例 XMLFile = "D:\\Test...

vb6.0查找xml文件里面的指定字符,并修改它的下一行
难度一般,不过下一行你想怎么修改也没说啊。请把问题交代清楚 姑且猜下吧,函数参数:xmlfile为xml文件路径,newvalue为下一行你想要修改的新值 private sub fixxml(byval xmlfile as string, byval newvalue as string)found = falseset xml = createobject("msxml2.domdocument")call xml.load(...

如何在VB6中读取XML文件
工程中引用Microsoft XML,啥版本都行,然后就可以用常见的方法操作xml文件了,比如:Dim xmldoc As New MSXML.DOMDocumentxmldoc.Load "xml文件的路径" '打开xml文件Print xmldoc.selectNodes("root\/data")(0).Text '打印其中一个节点的内容 ...

VB6.0如何读取并修改XML文件?
你有两个选择:1、将xml文件当做文本文件来处理。替换指定字符即可。2、使用 MSXML 组件来处理。度娘搜一下,一大堆文档可参考。打字不易,如满意,望采纳。

vb.net读取xml文件。。求助大神。。。
' reader.ReadStartElement("MSGa") '试验时用了MSG这3个字符出错了可能跟命令冲突所以我加了个a ' Console.Write("The content of the title element: ")' Console.WriteLine(reader.ReadString())' reader.ReadEndElement()' reader.ReadEndElement()While reader.Read()If reader.IsStartElement...

vb6.0中读取xml或者txt出现中文乱码
读取的时候,你要在读文件流的 API 上指明要用什么编码读取 xml,txt 文件,乱码主要是格式不对,如果你没指定编码,则系统会用一个默认的编码,如果默认编码刚好是 ansi,则读 ansi 没问题,原理基本上是这样。

使用vb.net如何读取XML文件
</Detail> \\'用VB.NET读写XML文件 C1aSS WriteXML Shared Sub main()Dim obj DataSet As New System.Data.DataSet()Dim strVirtualPath As String=”t.xml”\\'载入XML文件DataSet objDataSet.ReadXml(”xmlfile.xml”)\\'通过控制器读取XML内容 Console.Write(objDataSet.GetXml)\\'从原...

相似回答
大家正在搜