C# RichTextBox Zeilenumbrüche

Maniac

Erfahrenes Mitglied
Moin,

Ich hab ein kleines Problem mit den Zeilenumbrüchen in einer richTextBox.
Ich erstelle mir per Script einen String mit Zeilenumbrüchen.
Diesen schreibe ich in die RichTextBox und den Inhalt aus der Textbox möchte ich danach in eine Datei schreiben.
Hier geht jedoch jegliche Formation verloren, also alles wird in eine Zeile geschrieben.
Hier der String:
Visual Basic:
private string makeLines()
        {
            
            string br = "\r\n";

            string hostText = "#VHOST " + getVhostName() + br;
            hostText += "<VirtualHost *:80>\r\n";
            hostText += "     DocumentRoot \"" + getRootDir() + getVhostName() + "\"" + br;
            hostText += "     ServerName " + getVhostName() + ".local" + br;
            hostText += "     <Directory \"" + getRootDir() + getVhostName() + "\">" + br;
            hostText += "        Options FollowSymLinks" + br;
            hostText += "        AllowOverride All" + br;
            hostText += "        Order deny,allow" + br;
            hostText += "        Allow from all" + br;
            hostText += "     </Directory>" + br;
            hostText += "</VirtualHost>";

            return hostText;
        }

Und hier das befüllen der TextBox:
Visual Basic:
private void next_Click(object sender, EventArgs e)
        {
            aditionalParameterBox.Text = makeLines();
            next.Hide();
            save.Show();
        }
Wenn ich nun den Inhalt der Box in eine Datei schreibe wird alles in eine Zeile geschrieben.
Visual Basic:
StreamWriter vhostWriter = new StreamWriter(vhostFile,true);
            // additional ist ein Parameter der Methode.
            vhostWriter.WriteLine(additional);
            vhostWriter.Close();
Das komische ist, als ich die Zeile aus der .conf hier einfügen wollte, war sie wieder richtig formatiert. Liegt es also an der Datei? Wie kann ich das ändern?
 
Hallo,

hast du bei der RichTextBox zufällig "MultiLine" auf False gesetzt?
Ansonsten klappt das bei mir ganz gut mit dem Zeilenumbruch in der RichTextBox.

Beim speichern in die Datei würde ich die Methode "Write()" anstatt "WriteLine" verwenden.
Vermutlich killt WriteLine alle Zeilenumbruche aus dem String um wirklich alles in "eine Line" zu schreiben.
 
Hallo,

hast du bei der RichTextBox zufällig "MultiLine" auf False gesetzt?
Ansonsten klappt das bei mir ganz gut mit dem Zeilenumbruch in der RichTextBox.

Beim speichern in die Datei würde ich die Methode "Write()" anstatt "WriteLine" verwenden.
Vermutlich killt WriteLine alle Zeilenumbruche aus dem String um wirklich alles in "eine Line" zu schreiben.

MultiLine = true

Ich werde es dann heute Abend mal mit Write() versuchen, hab das aktuelle Projekt nicht zur Hand.
Ansonsten was ich bisher durch probieren herausgefunden habe, das nach der richTextBox die "\r" fehlen, also nur die "\n" weitergegeben wird. Hier ein ".Replace("\n","\r\n")" würde auch helfen.
Aber erst versuche is es mit Write().

Edit sagt das es mit Write() nicht funktioniert hatte, sondern nur mit dem Replace().
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück