Xml Datei in String Array Laden ?

  • VB.NET

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von Jamx7.

    Xml Datei in String Array Laden ?

    Hi leute ich wollte fragen wie ich die xml daten in ein array laden kann. Ich habe in der Suchfunktion bereits gesucht habe auch einiges über xml gefunden jedoch werde ich daraus nicht schlau ich hoffe ihr könnt mir helfen.

    Die Xml ist so aufgebaut:

    Quellcode

    1. <Names>
    2. <Name0>Werner</Name0>
    3. <Name1>Peter</Name1>
    4. <Name2>Kevin</Name2>
    5. <Name3>Johanna</Name3>
    6. </Names>
    7. <Citys>
    8. <City0>Berlin</City0>
    9. <City1>München</City1>
    10. <City2>Frankfurt</City2>
    11. <City3>Potsdamm</City3>
    12. </Citys>


    und von dieser möchte ich die Citys in einem Array und die Names in einem extra array ist das möglich?
    Danke nochmals für deine Hilfe aber ich bekomm das einfach nicht hin das ist mein code was mach ich falsch?

    VB.NET-Quellcode

    1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    2. Dim arr1 As New List(Of String)
    3. Dim xml1 As New Xml.XmlDocument
    4. xml1.Load("C:\Data.xml")
    5. 'xml1.SelectSingleNode("Names")
    6. For Each nodes As Xml.XmlNode In xml1
    7. arr1.Add(xml1.SelectSingleNode(nodes.Name).InnerText)
    8. Next
    9. ListBox1.Items.AddRange(arr1.ToArray)
    10. End Sub
    Jetzt kommt diese fehlermeldung wenn ich das so mach wie du es gesagt hast

    Fehlermeldung:

    Quellcode

    1. "Es sind mehrere Stammelemente vorhanden. Zeile 8, Position 2."


    Mein Code:

    VB.NET-Quellcode

    1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    2. Dim arr1 As New List(Of String)
    3. Dim xml1 As New Xml.XmlDocument
    4. xml1.Load("C:\L.xml")
    5. xml1.SelectSingleNode("Names")
    6. For Each nodes As Xml.XmlNode In xml1
    7. arr1.Add(nodes.InnerText)
    8. Next
    9. ListBox1.Items.AddRange(arr1.ToArray)
    10. End Sub


    hab es auch so probiert geht aber auch nicht:

    VB.NET-Quellcode

    1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    2. Dim txtred As System.IO.StreamReader = New System.IO.StreamReader("C:\L.xml")
    3. Dim arr1 As New List(Of String)
    4. Dim xml1 As New Xml.XmlDocument
    5. xml1.Load(txtred)
    6. xml1.SelectSingleNode("Names")
    7. For Each nodes As Xml.XmlNode In xml1
    8. arr1.Add(nodes.InnerText)
    9. Next
    10. ListBox1.Items.AddRange(arr1.ToArray)
    11. End Sub
    Hab es endlich hinbekommen hier meine Lösung :D :

    VB.NET-Quellcode

    1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    2. Dim txtred As System.IO.StreamReader = New System.IO.StreamReader("C:\L.xml")
    3. Dim arr1 As New List(Of String)
    4. Dim xml_file1 As New Xml.XmlDocument
    5. xml_file1.Load(txtred)
    6. Dim xoo As Integer = xml_file1.SelectSingleNode("Names").ChildNodes.Count
    7. For i = 0 To xoo - 1
    8. ListBox1.Items.Add(xml_file1.SelectSingleNode("Names").ChildNodes.ItemOf(i).InnerText)
    9. Next
    10. End Sub


    Danke trotzdem nochmal für deine Hilfe :thumbsup: