• 6563阅读
  • 8回复

[提问]Qt程序移植到别人机器上出现乱码 [复制链接]

上一主题 下一主题
离线dshzhou
 
只看楼主 倒序阅读 楼主  发表于: 2009-12-11
— 本帖被 XChinux 从 Qt基础编程 移动到本区(2013-04-01) —
在自己的机器上写好了Qt程序,已经处理了中文编码,显示一切正常.
但是复制到别人机器上就出现了乱码.
这是什么原因?
解决方法是什么?
离线20044454
只看该作者 1楼 发表于: 2009-12-11
你的编码不一致,你可以看看你的中文编码是XXX.UTF-8 看你另一台机器上是什么,也可以在另一台上改下环境变量一致,应该就没问题了,
当然windows和Linux不一样 一个是UTF-8一个zh_CN
让我做一个Qt的大牛!!!!
离线snailbing

只看该作者 2楼 发表于: 2009-12-11
两台机子的编码不同,尝试检查和修改
给你个建意,不推荐使用
QTextCodec::setCodecForLocale(QTextCodec::codecForLocale());
QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());
QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
这样的方式,这个设置以后如果本地编码不是 UTF-8 那么一不小心就会出现乱码的情况。
离线dbzhang800

只看该作者 3楼 发表于: 2009-12-11
楼主提供的信息太少。

如果用的windows的话,最可能的是楼主代码中用的gbk编码,而且程序发布时codec插件没一块发布
离线dshzhou
只看该作者 4楼 发表于: 2009-12-11
谢谢2楼;
请问一下3楼,如何将codec插件一块发布
离线wato
只看该作者 5楼 发表于: 2009-12-11
试试这样来得到中文QString:

QString::fromLocal8Bit("中文。")
离线snailbing

只看该作者 6楼 发表于: 2009-12-11
引用第3楼dbzhang800于2009-12-11 09:28发表的  :
楼主提供的信息太少。
如果用的windows的话,最可能的是楼主代码中用的gbk编码,而且程序发布时codec插件没一块发布


如果没有codec插件,那就不只是乱码了,而是crash了,我尝了好几回了
离线dbzhang800

只看该作者 7楼 发表于: 2009-12-11
引用第4楼dshzhou于2009-12-11 09:46发表的  :
谢谢2楼;
请问一下3楼,如何将codec插件一块发布


搜索论坛,这个问题很多人问过了
离线XChinux

只看该作者 8楼 发表于: 2009-12-11
应该是没有找到qcncodecs插件的问题,看下Assistant中的Delploy Qt Application节部分的关于插件发布的内容就明白了。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
快速回复
限100 字节
 
上一个 下一个