System.IO
Inhalt
Mit VB.NET eine Textdatei schreiben und lesen(System.IO)
Damit dieses Beispiel funktioniert, muss eine Textdatei vorhanden sein, welche 2 Linien hat.
Unser Beispiel:
Anfang txt-Datei
Pfad
\\xxsavms2\sd\bilder\etc
Ende txt-Datei
Die globalen Deklarationen lauten:
'----------------------------------
' System.IO Objekte
'----------------------------------
Dim objStreamReader As StreamReader
Dim objStreamWriter As StreamWriter
'----------------------------------
' System.IO Strings
'----------------------------------
Dim strLine As String
Dim strPfad As String
Dim strPfadDatei As String = "Media.pfad"
'----------------------------------
Media.pfad ist unsere Textdatei. Der Name zeigt, was die Datei beinhaltet und weil sie von einer txt – Datei in einer Pfad – Datei umgewandelt wurde, erkennt man nicht auf den ersten Blick, dass es sich um eine Textdatei handelt. (Also eine Art Verschlüsslung)
Lesen
Als erstes muss ein StreamReader initialisiert werden und die erste Linie lesen.
'---------------------------------
' StreamReader wird initialisiert
'---------------------------------
objStreamReader = New StreamReader(strPfadDatei)
'---------------------------------
' 1. Linie
'---------------------------------
strLine = objStreamReader.ReadLine
Die erste Linie benötigen wir aber nicht, weil da nur “Pfad” steht, wir aber den Pfad wissen wollen. Also muss strLine die zweite Linie sein.
'---------------------------------
' StrLine ist = 2. Linie
'---------------------------------
strLine = objStreamReader.ReadLine
Dafür lassen wir den Reader nur wieder eine Linie lesen.
Wir wollen nun den Pfad als String „abspeichern“:
'---------------------------------------------------
' strPfad als Pfad mit variabel für Haus oder Bilder
'---------------------------------------------------
strPfad = Mid(strLine, 1) & HausOderObjekt & "\"
Das HausOderObjekt ist eine Variabel, welche wir zum Pfad hinzufügen können.
Zum Schluss wird der Reader geschlossen.
'-------------------------
' Reader wird geschlossen
'-------------------------
objStreamReader.Close()
Schreiben
Das Schreiben findet seine Anwendung zum Beispiel bei einer Konfigurations – Maske, bei der der Pfad geändert werden kann.
Eine TextBox mit dem Pfad als String muss vorhanden sein, damit der User diesen Pfad ändern kann:
'-------------------------------
' TextBox wird mit Pfad gefüllt
'-------------------------------
txtConfig.Text = strPfad
Der Rest ist ähnlich wie beim Lesen:
'-------------------------------------
' StreamWriter wird initiert
'-------------------------------------
objStreamWriter = New StreamWriter(strPfadDatei)
'-------------------------------------
' erste Linie wird geschrieben "Pfad"
'-------------------------------------
objStreamWriter.WriteLine("Pfad")
'--------------------------------------------
' zweite Linie (der Pfad) wird überschrieben)
'--------------------------------------------
objStreamWriter.WriteLine(txtConfig.Text)
'------------------------------
' Writer wird geschlossen
'------------------------------
objStreamWriter.Close()