[Python-de] unicode String in Datei schreiben

Andreas Pakulat apaku at gmx.de
Sam Mar 5 00:32:53 CET 2005


On 04.Mär 2005 - 22:20:37, Albert Hermeling 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)
> 
> Wie kann ich jetzt das Encoding der Datei einstellen?

Soweit ich sehe gar nicht. Aber ich denke du willst kein Textfile
öffnen, sondern ein Binärfile, also mode=w|b . Ausserdem haben File
Objekte ein Attribut encoding welches die Kodierung angibt. Mehr dazu
findest du bestimmt in der Python-Lib-Doku....

Ansonsten gibts im codecs Modul einen open-Befehl mit encoding
Angabe...

Andreas

-- 
Future looks spotty.  You will spill soup in late evening.