hi,
ich arbeite mit python 2.4.2 unter windows. habe probleme mit umlauten, insofern das ich sie nicht in eine datei schreiben kann. das parsen mit minidom aus der xml klappt mit den umlauten, lediglich das schreiben in eine datei nicht. ich bitte hiermit um eure hilfe!
PS: im forum gabs schon X beiträge dazu, allerdings konnte mir kaum einer von denen helfen, da das rauslesen von dem was ich brauche für mich als anfänger noch schwer ist.
MfG
encoding probleme
Kannst du denn auch mit einer explititen Fehlermeldung dienen?
Das hilft immer sehr weiter bei Umlauten...
Das hilft immer sehr weiter bei Umlauten...
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hi Korsakov!Korsakov hat geschrieben:habe probleme mit umlauten
Vielleicht hilft dir das schon weiter: http://www.python-forum.de/topic-5095.html
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.
@murph:
@gerold: das nen ich mal nen thread, danke werde ich morgen früh durchlesen 
Code: Alles auswählen
Traceback (most recent call last):
File "EnCORE", line 110, in ?
makeCacheItems()
File "EnCORE", line 64, in makeCacheItems
cache.write('%s=%s\n' % (theNode, theValue))
UnicodeEncodeError: 'ascii' codec can't encode character u'\xfc' in position 66:
ordinal not in range(128)

du kannst halt nicht ascii für sonderzeichen benutzen, dafür brauchst du schon was besseres wie unicode, iso-western etc.
(das weiß ich nicht genau, was du da brauchst)
(das weiß ich nicht genau, was du da brauchst)
Das Unicode-Zeichen u'\xfc', ein kleines ü, ist nicht in ASCII enthalten. Du versuchst eine Unicode-Zeichenkette in eine Datei zu schreiben d.h. die muss irgendwie kodiert werden. Wenn Du nichts anderes angibst, dann wird ASCII als Kodierung genommen und wenn die Unicode-Zeichenkette etwas enthält was sich nicht als ASCII kodieren lässt, dann kommt die Ausnahme.Korsakov hat geschrieben:@murph:Code: Alles auswählen
Traceback (most recent call last): File "EnCORE", line 110, in ? makeCacheItems() File "EnCORE", line 64, in makeCacheItems cache.write('%s=%s\n' % (theNode, theValue)) UnicodeEncodeError: 'ascii' codec can't encode character u'\xfc' in position 66: ordinal not in range(128)
Am besten öffnest Du die Datei über `codecs.open` und gibst die gewünschte Kodierung an, dann kannst Du problemlos Unicode-Zeichenketten in die Datei schreiben, solange sie nur aus Zeichen bestehen, die mit der Kodierung dargestellt werden können.