Ich versuche, den Inhalt eines Textfelds in einer Textdatei mit Visual C # zu speichern. Ich benutze den folgenden Code:
%Vor%aber ich bekomme nur die folgende Textzeile in der Textdatei:
%Vor%Gefolgt von nur einem kurzen Teil dessen, was tatsächlich in der Textbox war, endete mit "...". Warum schreibt es nicht den gesamten Inhalt der Textbox?
Optionen:
Beachten Sie bei der Verwendung von WriteLine()
, dass der in der Datei gespeicherte Inhalt der Text der TextBox ist, plus eine neue Zeile . Der Inhalt der Datei stimmt also nicht genau mit dem Inhalt der TextBox überein. Wann würde dich das interessieren? Wenn Sie die Datei verwenden, um später in einer Text-Eigenschaft eines Textfelds zurückzulesen, gehen Sie durch das Speichern- & gt; Laden- & gt; Speichern- & gt; Laden ...
Ihre Auswahl, um den gesamten Text zu behalten (wenn Sie using System.IO
):
Datei. WriteAllText (Dateiname, textBox.Text)
Datei. WriteAllLines (Dateiname, TextBox. Lines )
Wenn Sie darauf bestehen, TextWriter zu verwenden, können Sie den Wrapper using
verwenden, um den Stream zu entsorgen, wenn Sie in Ihrer Schreibmethode komplexe Logik verwenden müssen.
Beachten Sie, dass IOExceptions ausgelöst werden können, wenn Sie versuchen, auf eine Datei zum Lesen oder Schreiben zuzugreifen. Erwägen Sie, eine IOException zu erfassen und in Ihrer Anwendung zu bearbeiten (den Text beizubehalten, dem Benutzer anzuzeigen, dass der Text nicht gespeichert werden konnte, eine andere Datei vorschlagen usw.).