C# Formatierung einer RichtextBox beim speichern in txt Datei beibehalten

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Ich hab's mal ausprobiert - in richTextBox.Text ist der Zeilenumbruch das Steuerzeichen LF ("Line Feed" / Zeilenvorschub, in C-ähnlichen Sprachen "\n"), aber Windows erwartet als Zeilenumbruch die Folge CR LF ("Carriage Return" + "Line Feed" / Wagenrücklauf + Zeilenvorschub, in C-ähnlichen Sprachen "\r\n").

Abhilfe z. B.:

 File.AppendAllText(path, text.Replace("\n", "\r\n"));

Oder, im Sinne der Plattformunabhängigkeit,

 File.AppendAllText(path, text.Replace("\n", System.Environment.NewLine));
Woher ich das weiß:Beruf – Software-Entwickler

Hallo, vielen Dank für die hilfreiche Antowort. Funktioniert jetzt super!

Ab 3 Antworten auf eine Frage kann ich aber erst eine Frage als hilfreichste auszeichnen, also schreib bitte noch irgendeine Antwort dass ich diese hier als hilfreichste auszeichnen kann :)

VG Patrick

0

Ich möchte nur anmerken, dass mit dem Kürzel "txt" üblicherweise Plain Text-Dateien gekennzeichnet werden, während RichText normalerweise mit rtf-Endung speichert.

Natürlich kannst du das halten, wie du lustig bist, aber es gibt in der internen Verarbeitung von Plain Text (TextBox) und RTF (RichTextBox) gravierende Unterschiede, gerade und auch was Zeilenumbrüche, Tabulatoren, Textauszeichnungen etc. angeht.

Ich empfehle dir daher, dich via Google über die Unterschiede zwischen Plain Text und Richt Text Format zu erkundigen.

Was möchtest Du wissen?