Seite 1 von 1
Fehler nur ausserhalb der IDE
Verfasst: Dienstag 18. Oktober 2011, 11:12
von patmaster
Hi,
Ich habe ein seltsames Problem.
Ich habe ein kleines Tool geschrieben das Infos aus XML-Files extrahiert und in ein XLS-Sheet schreibt.
Selbstverständlich hatte ich da mit dem Encoding zu kämpfen

Derzeit ist es so das wenn ich das Script in Eclipse debugge, kein Fehler geworfen wird, wenn ich das Script jedoch über die cmd-line aufrufe, kriege ich Exceptions, aufgrund von Encoding Problemen.
Hat jemand eine Idee woran das liegen kann ?!
Ich stelle vorerst mal keinen Code rein weil ich hoffe das jemand die Problematik kennt.
Falls der Code doch von Nöten ist, hole ich das natürlich gerne nach.
Re: Fehler nur ausserhalb der IDE
Verfasst: Dienstag 18. Oktober 2011, 11:32
von BlackJack
@patmaster: Du machst halt irgendwo Annahmen über die Kodierung die nur innerhalb von Eclipse gelten. Lass das sein.

Re: Fehler nur ausserhalb der IDE
Verfasst: Dienstag 18. Oktober 2011, 11:36
von patmaster
Wenn ich doch nur könnte
Wieso gelten innerhalb von Eclipse andere Kodierungen als außerhalb ?!
Re: Fehler nur ausserhalb der IDE
Verfasst: Dienstag 18. Oktober 2011, 11:37
von JonasR
Ich bin der Meinung das Eclipse automatisch Unicode benutzt und der "normale" Interpreter das Script mit ASCII encoding aufruft. Du solltest halt keine ÄÖÜ etc in deinem Code stehen haben. Auch nicht in den Kommentaren. Andernfalls
http://www.python.org/dev/peps/pep-0263/ (Habe ich gerade spontan gefunden und nur überflogen also nicht köpfen

)
EDIT: Bei Aptana (basiert auf Eclipse) kann ich das Encoding unter Preferences>General>Workspace und dann im Punkt "Text file encoding" ändern
Re: Fehler nur ausserhalb der IDE
Verfasst: Dienstag 18. Oktober 2011, 11:40
von patmaster
In meinem Code selbst verwende ich eh keine Umlaute, es geht eher um die XML-Files die ich einlese. Da meckert er über Zeichen

.
Danke für den Link, über den bin ich auch schon gestolpert

Re: Fehler nur ausserhalb der IDE
Verfasst: Dienstag 18. Oktober 2011, 11:43
von JonasR
Na dann solltest du dir mal anschauen wie du in Python mit Unicode bzw utf-8 umgehst

Re: Fehler nur ausserhalb der IDE
Verfasst: Dienstag 18. Oktober 2011, 12:29
von Hyperion
JonasR hat geschrieben:Ich bin der Meinung das Eclipse automatisch Unicode benutzt und der "normale" Interpreter das Script mit ASCII encoding aufruft.
Darum sollte man das Encoding auch immer angeben, z.B.:
Nebenbei ist Unicode ein Konzept, welches nur intern in einem Programm verwendet wird. Zum Serialisieren (=encode) werden eben Kodierungen verwendet, wie etwa "utf-8", "ASCII" oder auch "ISO-8859-1", usw. Nimmt man "utf-8" so hat man keine Probleme, da dieses Encoding alle Unicode-Codepoints abbilden kann. Andere Encodings können das eben nicht und dann krachts.
Für mehr Infos dazu s. meine Sig.