Hallo,
es werden alle Breaks in einem nicht von meinem TextEditor erstellen TextFile irgendwie ignoriert. Wenn ich aber mit meinem Programm eine Datei mit Breaks speichere und es wieder öffne funktioniert es.
Hab mal irgendwo gesehen es gibt "\ r" und "\ n".. ohne Whitespace
Breaks von Textdateien übernehmen
Hi. Hast du Scripte zwischen den Plattformen ausgetauscht? Da musst dus chon beachten, dass es da verschiedene Zeileinsprünge gibt: unter win "\r\n", unter Linux "\n" und unter Mac nur "\r". Sowas musst du natürlich vorher konvertieren, da die sonst mit übernommen werden, aber auf einer anderen Plattform dann quasi ungültig sind
-
- Python-Forum Veteran
- Beiträge: 2010
- Registriert: Freitag 11. Oktober 2002, 18:00
- Wohnort: Salzburg
- Kontaktdaten:
Hi MacEvil,
Python2.3 bietet auch Universal Newline Support. Das heisst, \n, \r\n und \r werden wenn eine Datei mit dem Modus U geöffnet wird beim lesen wie ein einfaches \n behandelt.
Bei einem guten Texteditor, kannst Du auch einstellen welchen Zeilenumbruch er verwendet.
Gruß
Dookie
Python2.3 bietet auch Universal Newline Support. Das heisst, \n, \r\n und \r werden wenn eine Datei mit dem Modus U geöffnet wird beim lesen wie ein einfaches \n behandelt.
Bei einem guten Texteditor, kannst Du auch einstellen welchen Zeilenumbruch er verwendet.
Gruß
Dookie
Ich kenn mich mit Mac Systemen allgemein nicht aus... nur so aus Neugier: verwendet MacOSX nun als Mischling zwei unterschiedliche Linesep's ? Oder liegt die Ursache davon vielleicht doch woanders?
Ansonsten hättest du bei früheren Pythonversionen auch etwas Arbeitsspeicherlastiger vergehen können:
Dann hättest du die ganze Datei in text und kannst sie so bearbeiten. Wenn man sie dann zeilenweise haben will, macht man einfach text.split('\n').
Milan
Ansonsten hättest du bei früheren Pythonversionen auch etwas Arbeitsspeicherlastiger vergehen können:
Code: Alles auswählen
text=open('datei.txt','rb').read()
text=text.replace('\r\n','\n').replace('\r','\n')
Milan