質問

私のプログラムは、cPickleでパックされたファイルにファイルインデックスを保存します。英語以外のファイル名があります。 これをやるとき

print f [0]

ここでf [0]は" \ xc2 \ xe8 \ xf1 \ xee \ xea \ xee \ xf1 \ xed \ xfb \ xe9 \ xe3 \ xee \ xe4"です。 ("Високосныйгод"通常表示)、文字列を適切な方法で(ロシア語で)印刷します。

プログラムが文字列u'Високосныйгод 'を手動でQTreeViewに追加すると、すべてが正常になります。

しかし、プログラムがこの文字列(" \ xe3 \ xee \ xe4"など)を、PickleされていないファイルからQTreeViewに直接配置すると、次のようになります。

代替テキストhttp://img170.imageshack.us/img170/9226/encoding .png

それを解決する方法はありますか?

役に立ちましたか?

解決

正しいエンコード(見た目では「cp1251」)を使用して、ピクルされていない文字列に対して decode を実行しましたか?そうでない場合は、これを実行して、GUIにUnicode文字列を渡していることを確認する必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top