[Python-de] pyqt4: text ist utf-8, wird aber nicht richtig dargestellt
Walter Dörwald
walter at livinglogic.de
Fr Jun 14 15:30:22 CEST 2013
On 14.06.13 14:54, Wolfgang Meiners wrote:
> Am 14.06.13 13:59, schrieb Dinu Gherman:
>>> https://dl.dropboxusercontent.com/u/5015890/Beweisfotos/minimal.zip
>>
>> Ich versuche heut noch mal reinzuschauen...
>
> kann es sein, dass das Problem etwas mit utf-8 und utf-8-mac zu tun hat?
> In der minimal_ui.py steht folgende Funktion:
>
> def retranslateUi(self, Dialog):
> Dialog.setWindowTitle(QtGui.QApplication.translate("Dialog",\
> "Dialog", None, QtGui.QApplication.UnicodeUTF8))
> self.label.setText(QtGui.QApplication.translate("Dialog",\
> "Ätsch", None, QtGui.QApplication.UnicodeUTF8))
>
> die ich einfach mal ergänzt habe zu
>
> def retranslateUi(self, Dialog):
> Dialog.setWindowTitle(QtGui.QApplication.translate("Dialog",\
> "Dialog", None, QtGui.QApplication.UnicodeUTF8))
> name='Ätsch'
> self.label.setText(QtGui.QApplication.translate("Dialog", name,\
> None, QtGui.QApplication.UnicodeUTF8))
> print(bytes(name,'utf-8'))
> print(bytes(self.label.text(),'utf-8'))
>
>
> Das führt -mit Eclipse gestartet- zur Ausgabe
> b'\xc3\x84tsch'
> b'\xc3\x84tsch'
>
> und im Terminal gestartet zur Ausgabe
> b'\xc3\x84tsch'
> b'\xef\xbf\xbdtsch'
>
> Aber wo steckt der Fehler?
Hmm, b'\xef\xbf\xbd' ist ein "REPLACEMENT CHARACTER" in UTF-8. Evtl.
gibt's Probleme mit dem Encoding des Python-Skripts/Text-Editors?
Schreib doch mal in Deinem Sourecode
name='\xc4tsch'
statt
name='Ätsch'
Servus,
Walter
Mehr Informationen über die Mailingliste python-de