Probleme mit XML

  • VB.NET

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

    Probleme mit XML

    Moin,

    ich komme einfach nicht drauf, wie ich eine Variable in eine XML schreiben kann.

    In dem Folgenden code werden zwar schon die werte die ich im code eingeben habe in die xml geschrieben jedoch bekomme ich es nicht hin das z.b. variable a als dateiname genommen wird und z.b. variable b anstatt von person.

    VB.NET-Quellcode

    1. Public Class Form1Public a, b As String
    2. Private Sub XMLWriter() Handles button1.click
    3. a = TextBox1.Text
    4. B = "irgendwas"
    5. ' Auswahl einer Kodierungsart fr die Zeichenablage Dim enc As New System.Text.UnicodeEncoding
    6. ' XmlTextWriter-Objekt fr unsere Ausgabedatei erzeugen: Dim XMLobj As Xml.XmlTextWriter _
    7. = New Xml.XmlTextWriter("quicky.xml", enc)With XMLobj
    8. ' Formatierung: 4er-Einzge verwenden
    9. .Formatting = Xml.Formatting.Indented
    10. .Indentation = 4
    11. ' Dann fangen wir mal an:
    12. .WriteStartDocument()
    13. ' Beginn eines Elements "Personen". Darin werden wir mehrere
    14. ' Elemente "Person" unterbringen. .WriteStartElement("Personen")
    15. ' Hier kommt das erste Element "Person". Eine Person hat
    16. ' in unserem einfachen Beispiel einen Titel, einen Nach-
    17. ' namen und einen Vornamen. Als Demo soll uns das gengen.
    18. .WriteStartElement("Person") ' <Person .WriteAttributeString("Titel", "Dr.")
    19. .WriteAttributeString("Name", "Meyer").WriteAttributeString("Vorname", "Hans")
    20. .WriteEndElement() ' Person />
    21. ' Hier kommt (noch immer im Element "Personen" das zweite
    22. ' Element "Person".
    23. .WriteStartElement("Person") ' <Person .WriteAttributeString("Titel", "")
    24. .WriteAttributeString("Name", "Schmidt").WriteAttributeString("Vorname", "Carlos")
    25. .WriteEndElement() ' Person />
    26. ' Nachdem das Element "Personen" zwei Elemente "Person"
    27. ' erhalten hat, beenden wir die Ausgabe fr "Personen"...
    28. .WriteEndElement() ' </Personen>
    29. ' ... und schlieáen das XML-Dokument (und die Datei)
    30. .Close() ' Document
    31. End WithEnd Sub
    32. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    33. ' Wir ben”tigen einen XmlReader fr das Auslesen der XML-Datei Dim XMLReader As Xml.XmlReader _
    34. = New Xml.XmlTextReader("quickie.xml")
    35. ' Es folgt das Auslesen der XML-Datei With XMLReader
    36. Do While .Read ' Es sind noch Daten vorhanden
    37. ' Welche Art von Daten liegt an? Select Case .NodeType
    38. ' Ein Element Case Xml.XmlNodeType.Element
    39. label1.text = ("Es folgt ein Element vom Typ " & .Name)
    40. ' Alle Attribute (Name-Wert-Paare) abarbeiten
    41. If .AttributeCount > 0 Then
    42. ' Es sind noch weitere Attribute vorhanden
    43. While .MoveToNextAttribute ' n„chstes label1.text = ("Feldname: " & .Name & _
    44. " -> " & _"Feldwert: " & .Value)
    45. End While
    46. End If
    47. ' Ein Text Case Xml.XmlNodeType.Text
    48. label1.text = ("Es folgt ein Text: " & .Value)
    49. ' Ein Kommentar Case Xml.XmlNodeType.Comment
    50. label1.text = ("Es folgt ein Kommentar: " & .Value)
    51. End Select
    52. Loop ' Weiter nach Daten schauen
    53. .Close() ' XMLTextReader schlieáen
    54. End WithEnd Sub
    55. End Class

    Kann mir jemand sagen wie das geht bitte ;( ich bin am verzweifeln.
    Vielen Dank im Voraus
    Viele Grüße
    Schay

    Schay schrieb:

    ich bin am verzweifeln.

    Abgesehen davon, dass du den Forum-Editor nicht auf "Quellcode" Ansicht geschaltet hast, wodurch dein Quellcode leider bis zur Unleserlichkeit fehlformatiert wurde, hast du bislang folgendes gemacht:
    XML Tutorial (voll dokumentiert!) per Copy und Paste eingefügt. Zwei Variablen dazugesetzt und dann ... nix mehr.
    Wie wäre es denn, wenn du dir mal die Kommentarzeilen durchliest? Denn dan würdest du - nach Einschaltung deines Hirns - ggfs schnell selbst darauf kommen, wo du was machen musst.
    Kommst du nicht drauf, empfiehlt es sich, erstmal mit was einfacherem anzufangen, da dir offensichtlich noch eine Menge Grundlagen fehlen.

    Ich bin ja am lesen und selber machen !
    Hab es jetzt auch geschafft hier mit schreibe ich ja eine xml-datei

    VB.NET-Quellcode

    1. Dim enc As New System.Text.UnicodeEncoding
    2. Dim XMLobj As Xml.XmlTextWriter _= New Xml.XmlTextWriter(varfilename & ".xml", enc)

    nur wie kann ich die jetzt z.b. in c:/abcd/ schreiben ?(