Как получить значения атрибута xml? - PullRequest
0 голосов
/ 28 июня 2010

Скажи, у меня есть немного xml.Как получить значение атрибута с помощью VB?

Ответы [ 2 ]

3 голосов
/ 06 июля 2010

Предполагается, что вы используете библиотеку MSXML?

Следующий код выведет все значения атрибутов дочерних узлов. XML в этом случае: -

<?xml version="1.0" encoding="utf-8"?>
<documents>
  <document id="12345" created="2002-09-24" owner="Andy" />
</documents>

Таким образом, на выходе будут показаны значения для id, созданного и владельца.

Вот код: -

    Dim XML As String
    Dim objXML As New MSXML2.DOMDocument
    Dim objElem As MSXML2.IXMLDOMElement
    Dim objSub As MSXML2.IXMLDOMElement

    XML = "<?xml version=""1.0"" encoding=""utf-8""?><documents><document id=""12345"" created=""2002-09-24"" owner=""Andy"" /></documents>"

    If Not objXML.LoadXML(XML) Then
        Err.Raise objXML.parseError.ErrorCode, , objXML.parseError.reason
    End If

    Set objElem = objXML.selectSingleNode("//documents")

    For Each objSub In objElem.childNodes
        Debug.Print objSub.nodeName

        If objSub.Attributes.length > 0 Then

        For i = 0 To objSub.Attributes.length - 1

            Debug.Print objSub.Attributes(i).nodeName & " - " & objSub.Attributes(i).nodeValue

        Next i

        End If

    Next
0 голосов
/ 07 июля 2010

Вы также можете посмотреть на это:

http://www.w3schools.com/XPath/xpath_syntax.asp

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...