Letzte gespeicherte Datei laden

  • VB.NET

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von MartinB..

    Letzte gespeicherte Datei laden

    Hallo,
    Ich bin an einem Notizprogramm tätig. Bis jetzt habe ich auch alles (fast allein) hinbekommen, aber.....
    Jetzt soll das Programm beim Start die "letzte gepseicherte Datei" anzeigen.

    Mein Quellcode ist momentan so:

    VB.NET-Quellcode

    1. Private Sub TextBox4_load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox4.HandleCreated
    2. Dim Ausgabe As String
    3. Dim objDateiLeser As StreamReader
    4. objDateiLeser = New StreamReader("C:\Notizen\Test.txt")
    5. Ausgabe = objDateiLeser.ReadToEnd()
    6. objDateiLeser.Close()
    7. objDateiLeser = Nothing
    8. TextBox4.Text = Ausgabe


    Jetzt muss ich irgendwie hinkriegen das er nicht immer die Test datei lädt sondern die "letzte gespeicherte...
    Könnt ihr mir da mal n tipp geben?
    Ich hab gegooglet aber find irgendwie nichts....zumindest nichts was mir weiterhilft.

    Vielen Dank schonmal
    Sowas wie "Recent Files"? Beim speichern einfach z.B. einem Contextmenustrip hinzufügen - als Tag kannst du den vollen Pfad nehmen und als anzeige nur den Dateinamen. Für konkrete Hilfe musst du etwas genauer werden...

    BTW: Was hältst du davon zum einlesen?

    VB.NET-Quellcode

    1. TextBox4.Text = IO.File.ReadAllText("C:\Notizen\Test.txt")
    Ich versuch es mal genauer zu beschreiben:
    Ich habe ein Windowsfenster. Darin sind zwei aktive Textboxen (in die 1. kann ich eine Notiz schreiben und ind die 2Textbox schreibe ich den Dateinamen) und zwei inaktive Textboxen (die eine soll die "letzte gespeicherte Notiz" und die andere "den dazugehörigen Dateinamen" anzeigen.
    Der Quellcode den ich angegeben habe liest aber immer nur die "TEST"Datei....
    Ich brauch eine Methode wie das Programm herausfindet was zuletzt gespeichert wurde und wie dies dann geöffnet wird.

    MfG
    Du speicherst dir nach jedem speichervorgang den Dateinamen+Kommentar in eine Datei, und liest sie im form_load event aus..
    du kannst so theoretisch einen kompletten verlauf darstellen/loggen
    Das ist meine Signatur und sie wird wunderbar sein!
    hmm. Ich glaub wir reden aneinander vorbei.

    Die Notiz wird unter einem Dateinamen (immer ein anderer) unter ("C:\Neuer Ordner\") gespeichert sobald ich speichern drücke.
    Wenn ich jetzt das fenster schließe und danach wieder öffne soll in den zwei inaktiven Textboxen die "letzte gespeicherte Notiz+Dateinamen" angezeigt werden.

    Mit diesem Quellcode habe ich erreicht das er "eine bestimmte Notiz+Dateinamen anzeigt. Ich möchte aber immer die letzte Datei! Ist irgendwie schwer zu erklären.

    VB.NET-Quellcode

    1. Private Sub TextBox4_load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox4.HandleCreated
    2. Dim Ausgabe As String
    3. Dim objDateiLeser As StreamReader
    4. objDateiLeser = New StreamReader("C:\Notizen\Test.txt")
    5. Ausgabe = objDateiLeser.ReadToEnd()
    6. objDateiLeser.Close()
    7. objDateiLeser = Nothing
    8. TextBox4.Text = Ausgabe
    9. End Sub
    10. Private Sub TextBox3_load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox3.HandleCreated
    11. Dim directory As New System.IO.DirectoryInfo("C:\Notizen\")
    12. For Each file As System.IO.FileInfo In directory.GetFiles
    13. If file.Extension = ".txt" Then
    14. TextBox3.Text = file.Name
    15. End If
    16. Next
    17. End Sub


    danke trotzdem für die mühe
    Ich habs hinbekommen...

    Danke euch für die Hilfe! Habs jetzt so gemacht!

    VB.NET-Quellcode

    1. Private Sub TextBox4_load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox4.HandleCreated
    2. Dim Ausgabe As String
    3. Dim objDateiLeser As StreamReader
    4. objDateiLeser = New StreamReader("C:\Sicherung\Lastsave2.txt")
    5. Ausgabe = objDateiLeser.ReadToEnd()
    6. objDateiLeser.Close()
    7. objDateiLeser = Nothing
    8. TextBox3.Text = Ausgabe
    9. End Sub

    und

    VB.NET-Quellcode

    1. Private Sub TextBox3_load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox3.HandleCreated
    2. Dim Ausgabe As String
    3. Dim objDateiLeser As StreamReader
    4. objDateiLeser = New StreamReader("C:\Sicherung\Lastsave.txt")
    5. Ausgabe = objDateiLeser.ReadToEnd()
    6. objDateiLeser.Close()
    7. objDateiLeser = Nothing
    8. TextBox4.Text = Ausgabe
    9. End Sub
    Es hat sich ein neues Problem ergeben. Wenn ich nun wie gewünscht das Programm schließe und wieder starte steht alles so wie ich es wollte da....aber....
    hinter dem dateinamen (z.B. BLUB) sind zwei Zeichen genauso wie hinter der Notiz (z.B. 123).

    Es wird im Texteditor automatsich ein Absatz eingefügt.....warum auch immer!?!?!?! :wacko:

    Kann ich das irgendwie unterbinden, dass dies nicht mehr angezeigt wird???

    Mfg