Archiv verlassen und diese Seite im Standarddesign anzeigen : [VB.Net] Listview einträge in abspeichern und auslesen
Negative
11.08.2009, 20:45
Hi folks, Ich kriegs nicht auf die Reihe die Einträge abzuspeichern (In .txt oder what ever) und dann Auszulesen. Das heist er soll es z.b so speichern: Eintrag1:Sub1:Sub2 Und dann beim Auslesen in die Listview einfügen. Kann mir wer helfen ? Mfg Nehgative
hackerking
11.08.2009, 21:02
Dim SW As New StreamWriter("PATH")
For j = 1 To ListView1.Items.Cout
SW.WriteLine(ListView1.Items(j).Text)
Next i
Negative
12.08.2009, 17:21
Hab es jetz so:
Dim SW As New StreamWriter("C:\text.txt")
For j = 1 To ListView1.Items.Count
SW.WriteLine(ListView1.Items(j - 1).Text)
Next j
SW.Close()
Aber er speichert dann nur den Eintrag ohne SubItems.
Und 2. Wie lese ich jetz die Einträge wieder ein ?
Public Sub LVSave(ByRef LV As ListView, ByVal File As String)
Dim s As String = ""
For I As Integer = 0 To LV.Items.Count - 1
s += LV.Items.Item(I).Text & ":"
For J As Integer = 0 To LV.Items.Item(I).SubItems().Count - 1
s += LV.Items.Item(I).SubItems(J).Text & ":"
Next
s += vbNewLine
Next
System.IO.File.WriteAllText(File, s)
End Sub
Public Sub LVLoad(ByRef LV As ListView, ByVal File As String)
Dim s() As String, t As String, u() As String
s = System.IO.File.ReadAllLines(File)
For Each t In s
u = Split(t, ":")
With LV.Items.Add(u(0), u(1))
For I As Integer = 2 To LV.Columns.Count
.SubItems.Add(u(I))
Next
End With
Next
End Sub
Das ist aber keine optimale Lösung, vor allem wegen dem Trennzeichen.
Schau dir am besten mal ein paar Beispiele zu INI/XML, typisierte Dateien und/oder Datenbanken an.
Negative
12.08.2009, 19:14
WoW danke Inout, Die Save funktion hab ich eingebaut leider speichert er den Eintrag doppelt hintereinander, die Subitems sind richtig (1mal)
Edit: In der Load funktion (hab die .txt richtig gemacht) Krieg ich beim debuggen in der Zeile: .SubItems.Add(u(I))
den Fehler: Der Index war außerhalb des Arraybereichs.
Mfg Nehgative
Das mit den doppelten Eintrag ist schon richtig so. Wenn du das nicht möchtest, musst du die Schleife(n) (für die SubItems) nur von 1 bis Count laufen lassen.
Der Index-Fehler sollte nicht auftreten, wenn du die abgespeicherte Datei nicht mehr änderst.
Negative
13.08.2009, 08:03
In welcher zeile meinst du?
In welcher zeile meinst du?
Powered by vBulletin® Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.