# xml datei auslesen



## Neo (25. Februar 2003)

Hi Jungs 

Grad von vornherein... bin vb n00b und schon stolz wenn ich ein file mit 




```
Private Sub cmd_einlesen_Click()
Open txt_pfad1 For Input As #1
Do While Not EOF(1)
Line Input #1, messung1
lst_aus1.AddItem messung1
Loop
End Sub
```


auslesen und in ne liste schreiben kann.....  

nun ist das ganze ein xml file wo ich die werte auslesen sollte die zwischen verschieden <tags> </tags> stehen.... 

nun komm ich da einfach schon langsam an den anschlag ;o) 

währt ihr so freundlich und könntet mir etwas weiterhelfen? 

Danke!  
 


Neo...


----------



## Dario Linsky (25. Februar 2003)

Ganz einfache Stringverarbeitung. Such Dir einfach mit InStr() die Position von dem Tag und dann schneidest Du mit Mid() den Text zwischen Tag und schliessendem Tag aus.


----------



## Neo (25. Februar 2003)

ja danke... sehr einfach für mich als anfänger ;o)


----------



## Dario Linsky (25. Februar 2003)

Vielleicht nicht unbedingt ganz einfach, wenn man gerade erst damit angefangen hat, aber sowas ist ein relativ guter Einstieg. Stringverarbeitung wirst Du immer wieder mal brauchen.

Kleines Beispiel:

```
Dim xml As String
Dim pos_start As Integer
Dim pos_stop As Integer
Dim cut As String

xml = "blablabla <tag>  wert   </tag> blablabla"

'Anfang und Ende des Tags raussuchen
pos_start = InStr(1, xml, "<tag>") + Len("<tag>")
pos_stop = InStr(pos_start, xml, "</tag>")

'Taginhalt ausschneiden
cut = Mid(xml, pos_start, pos_stop - pos_start)
Trim cut

MsgBox "Wert: """ & cut & """"
```


----------



## Daniel Toplak (25. Februar 2003)

Wenn du das hinbekommen hast, aus einem bestimmten Tag die Werte auszulesen, dann empfehle ich dir, schreib dir doch nen kleinen Parser für XML.
VB ist da vielleicht nicht so Optimal dafür aber dadurch, daß VB auch mit Klassen-Objekten umgehen kann wäre das auch in VB möglich.
Denn wenn du mehrere sachen mit XML verarbeiten willst, dann kannst du dir da Module erstellen, die du immer wieder verwenden kannst.
Später kannst du das ganze dann evtl. in eine DLL auslagern, die dann von jedem Programm verwendet werden kann.

Nur mal so als Vorschlag.

Gruss Homer


----------

