请问怎么用dom,简单的读出下面这段xml文档里的数据呢?

MyLoveSoft 2003-08-18 05:26:53
<xs:schema id="NewDataSet" xmlns="" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"><xs:element name="NewDataSet" msdata:IsDataSet="true" msdata:Locale="zh-CN"><xs:complexType><xs:choice maxOccurs="unbounded"><xs:element name="Table1"><xs:complexType><xs:sequence><xs:element name="F_RoomID" type="xs:string" minOccurs="0"/><xs:element name="F_Phone" type="xs:string" minOccurs="0"/><xs:element name="F_Status" type="xs:unsignedByte" minOccurs="0"/></xs:sequence></xs:complexType></xs:element><xs:element name="Table2"><xs:complexType><xs:sequence><xs:element name="F_RoomID" type="xs:string" minOccurs="0"/><xs:element name="F_Phone" type="xs:string" minOccurs="0"/><xs:element name="F_Status" type="xs:unsignedByte" minOccurs="0"/></xs:sequence></xs:complexType></xs:element></xs:choice></xs:complexType></xs:element></xs:schema>
上面这段xml是用vb读C#的dataset里的结果,表示的是这个dataset的结构,其中包括name为Table1,表的结构有三个字段(F_RoomID,F_Phone,F_Status),我怎么方便的读出这些数据呢?我使用过dom,但是不知道怎么准确而又方便的读出name和表结构了。请问高手怎么解决呢?
...全文
23 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
lihonggen0 2003-08-18
  • 打赏
  • 举报
回复
象这样:


Option Explicit

Dim m_XMLDoc As MSXML.DOMDocument
Dim m_XMLNode As MSXML.IXMLDOMNode
Dim m_XMLNodeList As MSXML.IXMLDOMNodeList

Private Sub Form_Load()

Dim lvwItem As ListItem
Dim i As Integer

On Error GoTo Form_Load_Error

Set m_XMLDoc = New MSXML.DOMDocument
m_XMLDoc.Load "E:\config.xml"

Set m_XMLNode = m_XMLDoc.documentElement

If m_XMLNode.nodeName = "application" Then
If m_XMLNode.childNodes.length > 0 Then
For i = 0 To m_XMLNode.childNodes.length - 1
If m_XMLNode.childNodes(i).nodeType = NODE_ELEMENT And _
m_XMLNode.childNodes(i).nodeName = "Config" Then
Set m_XMLNodeList = m_XMLNode.childNodes(i).childNodes
FillNodeLvw m_XMLNodeList
End If
Next
End If
End If

On Error GoTo 0
Exit Sub

Form_Load_Error:
MsgBox "Form_Load Error!"
End Sub

Private Sub FillNodeLvw(ByVal Node As IXMLDOMNodeList)

Dim lvwItem As ListItem
Dim i As Integer

On Error GoTo FillNodeLvw_Error

For i = 0 To Node.length - 1
If Node(i).nodeType = NODE_ELEMENT Then
Set lvwItem = L.ListItems.Add(, "A_" & i, Node(i).Text)
lvwItem.SubItems(1) = Node(i).Attributes.Item(0).Text
End If
Next

On Error GoTo 0
Exit Sub

FillNodeLvw_Error:
MsgBox "FillNodeLvw Error!"
End Sub

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧