• 6069阅读
  • 10回复

[提问]代码中写中文,显示乱码的问题 [复制链接]

上一主题 下一主题
离线nyxucong
 

只看楼主 倒序阅读 楼主  发表于: 2013-03-30
— 本帖被 XChinux 从 Qt基础编程 移动到本区(2013-04-01) —
我在代码中已经添加如下代码
    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GBK"));
    QTextCodec::setCodecForTr(QTextCodec::codecForName("GBK"));
    QTextCodec::setCodecForLocale(QTextCodec::codecForName("GBK"));
为什么直接写中文,到显示的时候还是乱码
           QMessageBox::warning(this,QObject::tr("数据库错误"),query.lastError().text());
比如这个提示信息,数据错误几个字显示的还是乱码。
离线tompsontan

只看该作者 1楼 发表于: 2013-03-30
只留前两行,不要这行看看:QTextCodec::setCodecForLocale(QTextCodec::codecForName("GBK"));
看淡得失
离线tompsontan

只看该作者 2楼 发表于: 2013-03-30
只要中间这行就可以了:QTextCodec::setCodecForTr(QTextCodec::codecForName("GBK"));
看淡得失
离线hehuim

只看该作者 3楼 发表于: 2013-03-30
你编辑器中用的是GBK吗?
离线呆呆很呆
只看该作者 4楼 发表于: 2013-03-30
用ts翻译文件
离线nyxucong

只看该作者 5楼 发表于: 2013-03-30
只留中间的就好了。谢谢了
离线jdwx

只看该作者 6楼 发表于: 2013-03-30
代码里不要写中文,使用翻译的办法显示中文。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线roywillow

只看该作者 7楼 发表于: 2013-03-30
回 楼主(nyxucong) 的帖子
想省事就别用中文
先确定一下你的编译器和你的源码编码
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线flyleaf91

只看该作者 8楼 发表于: 2013-03-31
使用Qt5 用utf -8编码,完全没有中文乱码的问题
离线纵刀少年

只看该作者 9楼 发表于: 2013-04-01
我直接用"system"的。
离线ratrat

只看该作者 10楼 发表于: 2013-04-05
中文不显示是什么原因?
英文可以显示
快速回复
限100 字节
 
上一个 下一个