Doppelte XML Tags einlesen

27/11/2008 - 12:28 von Ingi70 | Report spam
Huhu,

ich hab Probleme, n gleiche Tags einer XML Datei einzulesen.

In der Datei steht bsw:

<Message>
<Numbers>
<Number>123</Number>
<Number>456</Number>
<Number>789</Number>
</Numbers>
...

Wenn ich die mit so auslese, bekomme ich aber alle drei Werte in einer
Variable (strNr) zurück. Ich könnte die jetzt anhand der Leerstelle
duchschleifen, aber es muß doch auch eine XML Variante geben ?

code:

Dim objXML As DOMDocument
Dim objRoot As IXMLDOMElement
Dim objKategorien As IXMLDOMNodeList
Set objXML = New DOMDocument
Dim i As Integer
Dim j As Integer

With objXML
If Not .Load(strupsImportPath) Then
Debug.Print "Fehler: " & .parseError.reason;
Debug.Print "Zeile " & .parseError.Line & ",
Zeichen " & .parseError.linepos
End If
Set objRoot = .documentElement
Set objKategorien = objRoot.selectSingleNode("/Message/
Numbers")
For i = 0 To objKategorien.Length - 1

strNr = objKategorien.Item(i).Text
Next i

End With



Würde mich über Hilfe freuen

Gruß

Ingo v. Itter
Ratingen/Gemany
 

Lesen sie die antworten

#1 Mark Doerbandt
27/11/2008 - 12:33 | Warnen spam
Hallo,

Ingi70:

ich hab Probleme, n gleiche Tags einer XML Datei einzulesen.

In der Datei steht bsw:

<Message>
<Numbers>
<Number>123</Number>
<Number>456</Number>
<Number>789</Number>
</Numbers>
...

Wenn ich die mit so auslese, bekomme ich aber alle drei Werte in einer
Variable (strNr) zurück. Ich könnte die jetzt anhand der Leerstelle
duchschleifen, aber es muß doch auch eine XML Variante geben ?

code:

Dim objXML As DOMDocument
Dim objRoot As IXMLDOMElement
Dim objKategorien As IXMLDOMNodeList
Set objXML = New DOMDocument
Dim i As Integer
Dim j As Integer

With objXML
If Not .Load(strupsImportPath) Then
Debug.Print "Fehler: " & .parseError.reason;
Debug.Print "Zeile " & .parseError.Line & ",
Zeichen " & .parseError.linepos
End If
Set objRoot = .documentElement
Set objKategorien = objRoot.selectSingleNode("/Message/
Numbers")
For i = 0 To objKategorien.Length - 1

strNr = objKategorien.Item(i).Text
Next i

End With



mir ist unklar, wo das Problem ist: Du machst doch alles richtig, in
der inneren Schleife hast Du die drei Elemente. Nur konkatenierst Du
sie, was Du aber nicht willst. Was willst Du denn mit den Werten
machen?

Gruss - Mark

Informationen fuer Neulinge in den Access-Newsgroups unter
http://www.doerbandt.de/Access/Newbie.htm

Bitte keine eMails auf Newsgroup-Beitràge senden.

Ähnliche fragen