Hallo,
habe hier zwar einiges gefunden und auch einige Links, aber da nichts dabei war was genau meinem Fall entsprach schaffte ich es nicht das umzusetzen, da ich das ganze mit den charsets noch nicht so wirklich durchblicke.
Ich habe folgendes Problem. Ich habe ein Programm in Python geschrieben, was Daten aus von einem Server abruft ausliest. Diese kommen in iso-8859-1 daher. Nun habe ich auf einem meiner Suse Rechner auch iso-8859-1 am laufen als systemweites Encoding. Dort klappt alles problemlos.
Aber am Rechner an dem UTF8 systemweit eingestellt ist bereitet das natürlich Probleme.
Wie also kann ich meinem Python Skript sagen, dass es wenn im System nicht iso-8859-1 eingestellt ist es die Daten die reinkommen, bzw rauskommen dorthin konvertiert?
Danke
Stolzi
Umlaute aus Mysql Tabelle ... encoding
Hallo,
ich weiß nich, ob es dir was bringt, aber evtl kannst du ja eine Exception abfangen und das Ganze dann mit encode() und decode() behandeln.
LG
ich weiß nich, ob es dir was bringt, aber evtl kannst du ja eine Exception abfangen und das Ganze dann mit encode() und decode() behandeln.
LG
-
- User
- Beiträge: 188
- Registriert: Donnerstag 20. Juli 2006, 20:46
- Wohnort: Wien
- Kontaktdaten:
hi du,
angeblich gehts mit encode & decode
anleitung hier http://docs.python.org/lib/string-methods.html
python unicode anleitung hier http://www.reportlab.com/i18n/python_un ... orial.html
ich hoffe ich konnte dir helfen, ich hab das zwar noch nie selbst gebraucht aber ich bilde mir ein genau dieses vorgehen in pylons gesehen zu haben, und ich glaub die jungs wissen was sie tun (ganz leise: "hoff ich")
lgherby
angeblich gehts mit encode & decode
anleitung hier http://docs.python.org/lib/string-methods.html
python unicode anleitung hier http://www.reportlab.com/i18n/python_un ... orial.html
ich hoffe ich konnte dir helfen, ich hab das zwar noch nie selbst gebraucht aber ich bilde mir ein genau dieses vorgehen in pylons gesehen zu haben, und ich glaub die jungs wissen was sie tun (ganz leise: "hoff ich")
lgherby
Danke, das hat geholfen.
Wenn ich auf die Daten nach dem Auslesen Data=Data.decode('latin1') anwende, dann passt alles. Es wird richtig angezeigt, egal ob mein Computer auf UTF8, oder latin1 läuft. Auch wenn ich die Daten dann wieder in die Datenbank schreib die mit latin1 läuft passt alles.
Nur warum verstehe ich noch immer nicht. Also, wenn jemand Lust hat mir den Hintergrund zu erklären, dann würde ich mich freuen. Mit den geposteten Links habe ichs nicht geschafft das zu verstehen.
Danke
Stolzi
Wenn ich auf die Daten nach dem Auslesen Data=Data.decode('latin1') anwende, dann passt alles. Es wird richtig angezeigt, egal ob mein Computer auf UTF8, oder latin1 läuft. Auch wenn ich die Daten dann wieder in die Datenbank schreib die mit latin1 läuft passt alles.
Nur warum verstehe ich noch immer nicht. Also, wenn jemand Lust hat mir den Hintergrund zu erklären, dann würde ich mich freuen. Mit den geposteten Links habe ichs nicht geschafft das zu verstehen.
Danke
Stolzi
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Du weißt schon was Encodings sind? Und was Unicode ist?Stolzi hat geschrieben:Nur warum verstehe ich noch immer nicht. Also, wenn jemand Lust hat mir den Hintergrund zu erklären, dann würde ich mich freuen. Mit den geposteten Links habe ichs nicht geschafft das zu verstehen.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice