Mach Dir eine Datenklasse und implementiere das InterfaceSonaca schrieb:
in verschiedene Richtungen zu denken
IXmlSerializable
.Eigentlich brauchst Du den ganzen Kram nicht, wenn Du es so machst, wie ich es Dir in Post #2 vorgeschlagen habe.
VB.NET-Quellcode
- Imports System.Text
- Imports System.Xml.Serialization
- Public Class Form1
- Private pfad As String = "c:\temp\test.xml"
- Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
- Dim data = New MyXmlData
- data.Name = "Name"
- data.ServerURL = "http:\\www.zdf.de"
- data.Width = 42
- data.Height = 42
- Me.SaveXml(data, pfad)
- End Sub
- Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
- Dim data2 As MyXmlData
- data2 = Me.LoadXml(pfad)
- MessageBox.Show(data2.Name)
- End Sub
- Public Sub SaveXml(data As MyXmlData, file As String)
- ' Serialize object to a XML file.
- Using sw As New IO.StreamWriter(file, False, Encoding.Default)
- Dim x As New XmlSerializer(data.GetType())
- x.Serialize(sw, data)
- End Using
- End Sub
- Public Function LoadXml(file As String) As MyXmlData
- Dim data As MyXmlData = New MyXmlData()
- Try
- ' Deserialize XML file to a new object.
- Using sr As New IO.StreamReader(file, Encoding.Default)
- Dim x As New XmlSerializer(data.GetType())
- data = DirectCast(x.Deserialize(sr), MyXmlData)
- End Using
- Return data
- ' nix tun, die Settings-Instanz ist nicht valid
- Catch
- End Try
- Return data
- End Function
- End Class
- Public Class MyXmlData
- Public Property Name As String
- Public Property ServerURL As String
- Public Property Width As Integer
- Public Property Height As Integer
- End Class
Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch
Ein guter .NET-Snippetkonverter (der ist verfügbar).
Programmierfragen über PN / Konversation werden ignoriert!
Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch
Ein guter .NET-Snippetkonverter (der ist verfügbar).
Programmierfragen über PN / Konversation werden ignoriert!