[Python-de] unicode String in Datei schreiben

Andreas Jung lists at andreas-jung.com
Sam Mar 5 07:36:34 CET 2005



--On Freitag, 4. März 2005 22:20 Uhr +0100 Albert Hermeling 
<Albert.Hermeling at t-online.de> wrote:

> Guten Abend,
>
> es ist wahrscheinlich sehr einfach, aber ich komme nicht drauf wie kann
> ich  folgenden unicode String in eine Datei schreiben.
>
> u'Die \xc4pfel sind reif'
>
> Ich habe mit f = file("pfad") die Datei geöffnet, wenn ich jetzt die
> obige  Zeile mit f.write(u'Die \xc4pfel sind reif') schreiben will
> bekomme ich  folgenden Traceback:
>
> UnicodeEncodeError: 'ascii' codec can't encode character u'\xc4' in
> position  4: ordinal not in range(128)
>

Einen Unicode String in eine Datei zu schreiben macht keinen Sinn. Eine 
Datei ist
nicht anderes als ein Binärstream. D.h. Du konvertierst den Unicode String 
in irgendein
Encoding - z.B. UTF8 - und schreibst diesen in die Datei.

-aj
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : nicht verfügbar
Dateityp    : application/pgp-signature
Dateigröße  : 186 bytes
Beschreibung: nicht verfügbar
URL         : http://starship.python.net/pipermail/python-de/attachments/20050305/7238947e/attachment.pgp