Zeilenumbruch: /n oder /n/r
Paul Brunner
- sonstiges
Hallo zusammen,
Wann ist ein Zeilenumbruch /n und wann /n/r und wovon hängt das ab?
Paul
hi!
Wann ist ein Zeilenumbruch /n und wann /n/r und wovon hängt das ab?
Das hängt zum größten Teil davon ab, unter welchem Betriebssystem die
Datei erstellt wurde. Lies dir am besten mal wenigstens den Anfang
dieses Artikels durch:
http://aktuell.de.selfhtml.org/artikel/cgiperl/zeilenumbruch/index.htm
bye, Frank!
Hallo zusammen,
Wann ist ein Zeilenumbruch /n und wann /n/r und wovon hängt das ab?
Paul
ein zeilenumbruch ist IMHO \n, zumindest auf win32 und unix/linux
Hallo,
Wann ist ein Zeilenumbruch /n und wann /n/r und wovon hängt das ab?
Eigentlich nie;-)
Das, was Du meinst sind \n bzw \r. Und auch das sind keine Zeilenumbrücke, sondern nur Hilfskonstruktionen für gewisse Programmiersprachen, wobei dann (normalerweise) \r für den ASCII-Wert 13 (0x0D) und \n für den ASCII-Wert 10 (0x0A) steht.
Ursprünglich war 0x0D das Zeichen für den Wagenrücklauf, und 0x0A jenes für einen Zeilenvorschub bei Druckern gedacht. Diese Zeichen wurden dann auch bei der Ansteuerung von Bildschirmen verwendet, um auch hier Zeilenvorschübe usw. zu ermöglichen. Im Grunde genommen müßte man auch wirklich beide Zeichen senden, um den Curser (bzw. Druckkopf) am Beginn der nächsten Zeile zu positionieren. Einige findige Wichte (die, welche Unix in ihren Anfängen programmierten) haben dann gemeint, das zwei Zeichen völliger Quatsch sei, und haben kurzerhand den Wagenrücklauf eliminiert und in den Zeilenvorschub quasi integriert.
Seit dieser Zeit gibts einiges an Verwirrung zu diesem Thema. Vor allem weil dann die Herren von IBM gemeint haben "Nein, Nein, wenn dann machen wir das so wie immer, und verwenden zwei Zeichen. Schluß, aus Basta, keine Diskussion." So ist das dann auch bei PC-DOS bzw. MS-DOS gemacht worden.[1]
Na ja, und weil die Situation noch nicht verwirrend genug war, haben die beiden Steve's (Job und Wozniak) auch gleich was eigenes gemacht.
Einige andere wollten sich nicht recht entscheiden, und haben gleich alles mögliche erlaubt uswusf.
Hier die Varianten, die ich kenne (diesmal wieder in C-Notation):
Unix \n
MS-DOS \r\n
Windows \r\n
OS/2 \r\n
MacOS \r
VMS \n\r od. \r\n od. \n od. \r (Je nach Dateiformat)
Ach ja, damit ich das nicht vergesse. Das alles gilt natürlich nur für ASCII-Zeichensatz, bei anderen wie EBCDIC sind zum einen die Werte der Zeichen anders, zum andern... aber da kenne ich mich nicht wirklich aus, da müssen schon die Mainframe-Leute her.
Grüße
Klaus
[1] *ganzsentimental* Das waren noch Zeiten, als Billyboy noch auf irgend jemanden gehört hat.
Danke, das hat geholfen.
Der Sprung über die Betriebssystemgrenzen hat die Probleme gemacht.
Paul