vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
Rubrik: Controls · ListBox & ComboBox   |   VB-Versionen: VB2005, VB200803.06.09
ListBox-Inhalt in Datei speichern und wieder auslesen

Zwei Funktionen, mit denen sich der Inhalt einer ListBox als (Text-)Datei speichern und wieder einlesen lässt.

Autor:   Dieter OtterBewertung:  Views:  21.717 
www.tools4vb.deSystem:  Win2k, WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Heute möchten wir Ihnen zwei Funktionen vorstellen, mit denen sich der Inhalt einer ListBox als (Text-)Datei speichern und wieder einlesen lässt.

''' <summary>
''' Speichert den Inhalt der ListBox in eine Datei
''' </summary>
''' <param name="ListBox">ListBox-Control</param>
''' <param name="Filename">Dateiname der (Text-)Datei</param>
''' <returns>True, wenn erfolgreich, andernfalls False.</returns>
Public Function ListBoxSave(ByVal ListBox As ListBox, ByVal Filename As String) As Boolean
  Dim oStream As IO.StreamWriter = Nothing
  Dim bResult As Boolean = False
  Try
    ' Stream-Objekt zum Speichern erstellen
    oStream = New IO.StreamWriter(Filename, False, System.Text.Encoding.Default)
 
    With ListBox.Items
      ' Liste durchlaufen und zeilenweise speichern
      For i As Integer = 0 To .Count - 1
        oStream.Write(.Item(i) & IIf(i < .Count - 1, vbCrLf, ""))
      Next
    End With
    bResult = True
 
  Catch ex As Exception
 
  Finally
    ' Stream-Objekt schließen
    If Not IsNothing(oStream) Then oStream.Close()
  End Try
  Return (bResult)
End Function
''' <summary>
''' Liest die angegeben Datei aus und füllt die ListBox mit dem Inhalt der Datei
''' </summary>
''' <param name="ListBox">ListBox-Control</param>
''' <param name="Filename">Dateiname der (Text-)Datei</param>
''' <returns>True, wenn erfolgreich, andernfalls False.</returns>
Public Function ListBoxRead(ByVal ListBox As ListBox, ByVal Filename As String) As Boolean
  Dim bResult As Boolean = False
 
  ' Existiert die angegeben Datei?
  If IO.File.Exists(Filename) Then
    Try
      With ListBox.Items
        ' ListBox-Inhalt löschen
        .Clear()
 
        ' Gesamten Inhalt der Datei auslesen
        ' und als String-Array an die ListBox übergeben
        .AddRange(My.Computer.FileSystem.ReadAllText( _
          Filename, System.Text.Encoding.Default).Split(vbCrLf))
 
      End With
      bResult = True
    Catch ex As Exception
    End Try
  End If
  Return (bResult)
End Function

Aufrufbeispiel:

' ListBox-Inhalt speichern
ListBoxSave(ListBox1, "d:\myList.dat")
' ListBox-Inhalt einlesen
ListBoxRead(ListBox1, "d:\myList.dat")



Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
(einschl. Beispielprojekt!)

Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
- nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
- Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
 
 
Copyright ©2000-2024 vb@rchiv Dieter OtterAlle Rechte vorbehalten.


Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.