Beim Speichern einer Datei wird ja normalerweise '\n' in den betriebssystemspezifischen Zeilenumbruch os.linesep umgewandelt. Beim Speichern in einer mit codecs.open geöffneten Datei (bei mir 'UTF-16') scheint das nicht der Fall zu sein. Ist dies so wirklich gedacht oder muss man damit rechnen, dass dies Verhalten an die mit file geöffneten Dateien angepasst wird? Denn dann könnte die Änderung der Zeilenumbrüche in os.linesep vor dem Speichern ja später zu Problemen führen.
MfG
HWK
"Falscher" Zeilenumbruch bei codecs.open
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hi HWK!HWK hat geschrieben:Beim Speichern einer Datei wird ja normalerweise '\n' in den betriebssystemspezifischen Zeilenumbruch os.linesep umgewandelt. Beim Speichern in einer mit codecs.open geöffneten Datei (bei mir 'UTF-16') scheint das nicht der Fall zu sein.
``file`` oder ``open`` kümmern sich (bei Verwendung von "wU") um den Zeilenumbruch.
``codecs.open`` tut das nicht und es ist auch nichts in diese Richtung geplant. Frag mich nicht wo ich das gelesen habe. Ich weiß es nicht mehr.
mfg
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
- birkenfeld
- Python-Forum Veteran
- Beiträge: 1603
- Registriert: Montag 20. März 2006, 15:29
- Wohnort: Die aufstrebende Universitätsstadt bei München
Nein, Universal Newline Mode war nie zum Schreiben, nur zum Lesen gedacht.
Python 2.5:
Python 2.5:
Code: Alles auswählen
>>> open("x", "wU")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: universal newline mode can only be used with modes starting with 'r'
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Sorry, habe mich verschrieben.birkenfeld hat geschrieben:Nein, Universal Newline Mode war nie zum Schreiben, nur zum Lesen gedacht.
lg
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.