Textdatei editieren

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von ChaosBernd.

    Textdatei editieren

    Hallo,
    ich bin Anfänger und schreibe zurzeit an einem kleinen Programm. Es speichert die Angegebenen Daten in einer Textdatei durch My.Computer.FileSystem.WriteAllText . Das Problem ist, dass wenn ich dann zu einem anderen Zeitpunkt wieder neue eingegebene Daten speichere, wird die Datei nicht fortgesetzt sondern neu erstellt, sodass die alten Daten verloren gehen und einfach durch die neuen ersetzt werden. Wie muss ich vorgehen, dass die Datei fortgesetzt wird (hätte gerne zwischen neuen Daten 2x vbNewLine) ?
    Was ist denn daran bitte schön komplex, wenn du (wenn schon mit My) zuerst mit ReadAllText den ganzen Text in eine Stringvariable hinzufügst und dann den neuen Teil (inkl. vbNewLine) hinzufügst und dann wieder mit WriteAllText abspeicherst?
    Sind vielleicht 4 Zeilen Code


    Grüsse
    Pascal

    VB.NET-Quellcode

    1. Private Sub Speichern_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Speichern.Click
    2. If System.IO.File.Exists(FILE_NAME) = True Then
    3. Dim objWriter As New System.IO.StreamWriter(FILE_NAME)
    4. objWriter.Write("Datum: " + DateTimePicker1.Value.ToString + vbNewLine + "Beschreibung: " + TextBox1.Text + vbNewLine + "Anzahl: " + NumericUpDown1.Value.ToString + vbNewLine + ComboBox2.Text + " ist der Schuldner" + vbNewLine + vbNewLine + "_________________________________________________________________")
    5. objWriter.Close()
    6. MsgBox("Saved", MsgBoxStyle.Information)
    7. End If
    8. End Sub



    So weit bin ich jetzt schonmal. Ich muss jetzt nur noch die Funktion wissen die ans Ende der Textdatei (zeilen) geht, um dort weiter zu schreiben. Danke!

    VB.NET-Quellcode

    1. Using sw As System.IO.StreamWriter = New System.IO.StreamWriter("C:\Datei.txt", False)
    2. sw.WriteLine("Text der gespeichert wird.") 'Neue Zeile schreiben
    3. sw.Write("Text der angefügt wird.") 'Neuen Text anfügen
    4. sw.Close()
    5. End Using
    6. 'Parameter:
    7. 'Stream (String) Beinhaltet den Pfad inklusive dem Dateiname der gespeichert werden soll.
    8. 'Append (Boolean) Gibt an ob die Datei überschrieben werden soll, wenn diese schon vorhanden ist