2010-06-28 4 views
0

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

+0

Может быть, вы должны дать более подробную информацию? Как вы теперь загружаете XML или делаете что-либо с XML прямо сейчас? –

ответ

3

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

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

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

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

Вот код: -

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 
Смежные вопросы