Entwickler-Ecke
Basistechnologien - Mehrzeiligen Text in die Zwischenablage verschieben
MrDude - Sa 19.05.07 13:01
Titel: Mehrzeiligen Text in die Zwischenablage verschieben
Hallo alle zusammen,
ich möchte einen mehrzeiligen Text in die Zwischenablage kopieren, leider kommt dann beim pasten im Windows Notepad kein mehrzeiliger Text raus.
C#-Quelltext
1: 2: 3: 4: 5: 6:
| string txt; txt = "Zeile 1\n"; txt += "Zeile 2\n"; txt += "Zeile 3\n"; txt += "Zeile 4"; Clipboard.SetText(txt); |
Wenn ich das irgendwo paste kommt richtig:
Quelltext
1: 2: 3: 4:
| Zeile 1 Zeile 2 Zeile 3 Zeile 4 |
aber im Windows Notepad kommt nur
Quelltext
1:
| Zeile 1Zeile 2Zeile 3Zeile 4 |
Brauch ich um das richtig zu machen noch ein Zeichen? mit \r dazu gehts auch nicht und das macht bei allen anderen Programmen zwei Zeilenumbrüche...
MfG
MrDude
JüTho - Sa 19.05.07 14:17
Versuche es einmal mit Environment.Newline; vielleicht wird das überall richtig erkannt.
Jürgen
PS. Ich hoffe doch, dass Du "txt += ..." nur als Beispiel geschrieben hast. Strings sind grundsätzlich unveränderlich; ein derartiges Verhalten ist nur in Ausnahmefällen akzeptabel. Verwende stattdessen verwende mehrere Verknüpfungen direkt hintereinander "txt = ... + ... +" oder StringBuilder.
arj - Sa 19.05.07 16:06
Der Hintergrund warum das nicht geht ist folgender:
Unter Windows wird ein Zeilenumbruch mit \n\r dargestellt.
(Als Newline UND Carriage-Return).
Notepad erwartet das. Andere Editoren wie zum Beispiel WordPad kommen
auch nur mit dem Newline zeichen klar.
Unter Linux wird beispielsweise nur das Newline zeichen verwendet,
unter Mac war es lange Zeit so, dass nur das \r verwendet wurde.
Deshalb Environment.Newline von JüTho verwenden, dann sollte es gehen ;)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!