许多刚入门学习Qt的人会发现中文界面会出现乱码,其实解决这个问题十分简单,直接参考如下:
首先包含头文件:
#include <QTextCodec>
方法一:
QTextCodec::setCodecForLocale(QTextCodec::codecForName("GBK"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GBK"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("GBK"));
这里所起的作用就是将代码中字符串编码转换为GBK编码,当然也可以选择UTF-8等编码方式。但是有一点需要注意,那就是这里的编码方式要跟代码文件编码格式一致。本文中我的代码编码格式为GBK,所以本句代码中格式为GBK。
简单介绍一下UTF-8、GB18030、GBK、GB2312编码方式,它们的范围是:UTF-8>GB18030>GBK>GB2312。
方法二:
QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());
以上2个方法都可以都可以,直接加在主函数main内即可~