我的程序将文件索引存储在cPickle打包的文件中。有非英文文件名。 当我这样做时

print f [0]

其中f [0]是“\ xc2 \ xe8 \ xf1 \ xee \ xea \ xee \ xf1 \ xed \ xfb \ xe9 \ xe3 \ xee \ xe4" (正常视图中的“Високосныйгод”),它以正确的方式打印字符串 - 俄语。

当程序手动将字符串u'Високосныйгод'添加到QTreeView时,一切都很好。

但是当程序将这个字符串(“\ xe3 \ xee \ xe4”等)直接从unpickled文件放到QTreeView时,就会变成这样:

替代文字http://img170.imageshack.us/img170/9226/encoding .PNG

有什么方法可以解决这个问题吗?

有帮助吗?

解决方案

您是否使用正确的编码(“cp1251”看起来)在未打字的字符串上运行 decode ?如果没有,您需要这样做以确保您将Unicode字符串传递给GUI。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top