Fehler mit Umlauten und dem Umlenkung in eine Datei (Linux)

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Sonntag 7. November 2004, 21:55

jo dann ists unicode mit den zwei Bytes. Womit wurde denn die xml-datei erstellt bzw. wo ist die her?
[code]#!/usr/bin/env python
import this[/code]
Gast

Montag 8. November 2004, 10:19

Mit dem Texteditor Kate. Gespeichert als utf-8.

Nur, wieso bricht er mit einem Fehler ab?
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Montag 8. November 2004, 14:07

Da musst die Pythonentwickler fragen, beim Umwandeln mit str.encode() bzw str.decode() kann man mit einem zusätzlichen Argument bestimmen, was bei unumwandelbaren Zeichen geschehen soll:

Code: Alles auswählen

>>> "\xf6".decode("latin-1").encode("ascii", "xmlcharrefreplace")
Out[15]: 'ö'
Standartmässig steht das auf "strict" und bedeutet, daß eben eine Exception geworfen wird.


Gruß

Dookie
[code]#!/usr/bin/env python
import this[/code]
Gast

Montag 8. November 2004, 23:23

Hallo nochmal

folgender Thread hat mir geholfen:
http://python.sandtner.org/viewtopic.ph ... 47381b9db1

Ich habe nun folgende Zeile hinzugefügt:

Code: Alles auswählen

temp=open(file,"r",encoding="utf-8").read()
...
top=xml.dom.minidom.parseString(str(temp.encode("utf-8")))
[/quote]
Nun klappts auch :)

Danke noch einmal an alle!

Ciao,
Gast

PS: Ich sollte mich mal registrieren ...
Antworten