中文编码问题,在主函数加入:
QTextCodec codec = QTextCodec::codecForName("System"); //获取系统编码
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForCStrings(codec);
QTextCodec::setCodecForTr(codec);
肯定就ok啦
ui->tb_show->append(QString::fromLocal8Bit(mm,-1));
此段是收到消息端的界面上需要显示,若不处理,则显示的是乱码,先将收到的msg转换,msgtoLatin1(),然后进行传值给
const char ,显示的时候,QString::fromLocal8Bit(const char str,int size = -1),所以这里建立const char mm,
将mm传递进去即可
QT在Linux下默认UTF-8编码,在Windows默认GB2312编码。
可在QT->工具->选项->文本编辑器->行为下修改编码格式为GB2312,再新建的工程将以新的格式编码,在main中调用cout输出中文正常。
对于继承QObject来说,cout仍然输出乱码,引入<QDebug>头文件,使用qDebug() << "中文" 输出正常。
我刚开始在win10下使用Qt Creator(430版本)时,遇到过这么个问题:当程序输出中文时,中文会乱码,程序本身的中文未乱码。 乱码截图如下: 我查阅了很多资料,最后在自己的不断的尝试
以上就是关于qt中文注释乱码显示不全全部的内容,包括:qt中文注释乱码显示不全、解决Qt Tcp通信传输中文字符乱码问题、qt 5.4 tr()时中文乱码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)