[VB 2010] RichTextBox speichern und laden

11/13/2012 21:01 adistoe#1
Hallo zusammen

Also, ich möchte den Inhalt aus einer RichTextBox speichern. Das habe ich damit gemacht:

Code:
    Private Sub Form_Close(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Me.FormClosed
            Dim sw As IO.StreamWriter = New IO.StreamWriter(Application.StartupPath & "Save.txt", True)
    End Sub
Er hat alles gespeichert wie er sollte, nachdem ich die Funktion zum Laden einfügen wollte, ging es jedoch nicht mehr.
Also nahm ich die Funktion wieder raus und doch funktioniert es nicht mehr.

Nun meine Frage:

Wie kann ich am einfachsten den Inhalt aus einer RichTextBox speichern, ohne zu wissen, wie viele Zeilen darin enthalten sind?

Danach, wie kann ich diese Datei (Save.txt) richtig laden und den Text in der RichTextBox anzeigen lassen?

Ich bedanke mich schonmal für Hilfe.

Mit freundlichen Grüssen
adistoe



#edit: War wohl etwas voreilig, hab endlich das richtige Stichwort gefunen, nun funktioniert es ;)

Falls jemand das gleiche Problem hat, soll ihm das hier helfen: [Only registered and activated users can see links. Click Here To Register...]
11/15/2012 22:06 Der4StoryMan#2
Falls du es nicht unbedingt in einer .txt brauchst, kannst du es auch mit den Settings machen.

Dazu erstelle einfach unter Einstellungen ein neues Stetting.
Name z.B; "RichText"
Typ: String

Dann bei deinem Code, z.B unter Button1.click
Code:
            My.Settings.RichText = RichTextBox1.Text
            My.Settings.Save()
            My.Settings.Reload()
Wenn du das gespeicherte laden möchtest;
Code:
            RichTextBox1.Text = My.Settings.RichText
Vielleicht hilft es dir ja, obwohl du dein Problem schon gelöst hast ;)

MFG!
11/16/2012 16:45 adistoe#3
Nett von dir danke, ich werde es auf jedenfall auch noch als Möglichkeit in Betracht ziehen :)
11/16/2012 17:21 Kraizy​#4
Beachte jedoch, dass My.Settings gelöscht werden, wenn dein Programm verschoben o.ä. wird.
11/16/2012 17:25 adistoe#5
Ist leider sowieso nicht das, was ich für mein Programm suche, da bei manchen Änderungen der Inhalt der Box gespeichert und die Box geleert wird. Ist halt 1 Box für mehrere Einträge, jeder Eintrag gespeichert.
11/16/2012 20:30 EpicGamerX#6
Quote:
Originally Posted by adistoe View Post
Ist leider sowieso nicht das, was ich für mein Programm suche, da bei manchen Änderungen der Inhalt der Box gespeichert und die Box geleert wird. Ist halt 1 Box für mehrere Einträge, jeder Eintrag gespeichert.
Wie geleert?
Du kannst den Inhalt auch per .INI oder einer .TXT speichern, die du dann beim starten ausließt.. o.O

P.S. Biste der von AL? xD
11/16/2012 21:34 maxasoft#7
PHP Code:
My.Computer.FileSystem.WriteAllText("C:\TestFolder1\test.txt",
Richtextbox1.Text,True
Zum True am Ende:

Es beschreibt, ob der Inhalt hinzugefügt werden soll oder ob er einfach den alten Inhalt ersetzen soll, also bei false wir der text, der bereits in der datei ist, durch den text der Richtextbox ersetzt ;)
11/17/2012 10:55 adistoe#8
Quote:
Originally Posted by iTsProLiiKe View Post
Wie geleert?
Du kannst den Inhalt auch per .INI oder einer .TXT speichern, die du dann beim starten ausließt.. o.O

P.S. Biste der von AL? xD
Geleert in dem Sinne, dass man durch eine Listbox mehrere Auswahlmöglichkeiten hat. Soll heissen, wenn ich Bsp. "Speicher 1" auswähle ist die RichTextBox dieser Speicher. Sobald ich dann "Speicher 5" auswähle, wird der Text gelöscht und der Inhalt der Datei "Speicher 5" geladen.

Zum PS, du bist etwa der 30. der fragt, und ja, der bin ich :)


Quote:
Originally Posted by maxasoft View Post
PHP Code:
My.Computer.FileSystem.WriteAllText("C:\TestFolder1\test.txt",
Richtextbox1.Text,True
Zum True am Ende:

Es beschreibt, ob der Inhalt hinzugefügt werden soll oder ob er einfach den alten Inhalt ersetzen soll, also bei false wir der text, der bereits in der datei ist, durch den text der Richtextbox ersetzt ;)
Ist mir klar, danke trotzdem :)