[XML] Alle Knoten, deren Unterknoten etc. herausfinden

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von martinustreveri.

    [XML] Alle Knoten, deren Unterknoten etc. herausfinden

    Hey,

    für mein aktuelles Projekt muss ich aus einem XML-Dokument die Knoten, deren Unterknoten usw. und deren Stellung herausfinden.

    Beispiel:

    XML-Quellcode

    1. <?xml version="1.0" encoding="utf-8" ?>
    2. <test>
    3. <knoten1>
    4. <unterknoten1>
    5. </unterknoten1>
    6. <unterknoten2>
    7. </unterknoten2>
    8. </knoten1>
    9. <knoten2>
    10. <unterknoten1>
    11. <unterknoten2>
    12. </unterknoten2>
    13. </unterknoten1>
    14. </knoten2>
    15. </test>


    Bei diesem Beispiel bräuchte ich ungefähr folgende Daten:

    Quellcode

    1. knoten1 : parent test
    2. unterknoten1 : parent knoten1
    3. unterknoten2 : parent knoten1
    4. knoten2 : parent test
    5. unterknoten1 : parent knoten2
    6. unterknoten2 : parent unterknoten1


    Mein Ansatz war, mit der XmlDocument-Klasse zu arbeiten,
    allerdings ging das mitten in die Hose.

    Hätte von euch evtl. jemand einen Ansatz (außer "Parser schreiben" ;)) zur Lösung des Problems?

    lg.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „martinustreveri“ ()

    Hey,

    danke, das sieht schonmal sehr nützlich aus.
    Ich lasse das Thema noch ungelöst, evtl habe ich dussel noch ein paar Fragen, die ich nicht ergooglen, erSuFuen etc. kann ^^

    lg.

    ~Edit: Sag ichs doch.
    Bisher sieht das so aus:

    VB.NET-Quellcode

    1. While (_xmlReader.Read())
    2. If _xmlReader.NodeType = XmlNodeType.Element Then
    3. If Not _xmlReader.IsEmptyElement Then
    4. MsgBox(_xmlReader.Name & " hat den Wert " & _xmlReader.Value)
    5. Else
    6. MsgBox(_xmlReader.Name & " hat keinen Wert.")
    7. End If
    8. End If
    9. End While


    Wie das XML-Dokument aussieht, ist ja egal.

    Auf jeden Fall bekomme ich jetzt schön die Namen der Nodes ausgegeben.
    Aber, das ist das erste Problem,

    bekomme ich bei Nodes mit einem Wert, z.B. name, nur " name hat den Wert" ausgegeben.

    2. muss ich ja, um die ChildNodes auszulesen, ein XmlNode-Objekt vom momentanen Node haben, da ich sonst keine ChildNodes auslesen kann.

    Bitte um Hilfe :wacko:

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „martinustreveri“ ()