Qt中的中文显示,经常会出现乱码。Qt4中的解决方法,大致如下所示:
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF8"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF8"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF8"));
而Qt5的解决方法类似于以上的方式,但是由于QTextCodec::setCodecForTr()和QTextCodec::setCodecForCString()这两个函数在QT5中已经没有了所以做如下更改:
QTextCodec *codec = QTextCodec::codecForName("UTF-8");//或者"GBK",不分大小写
QTextCodec::setCodecForLocale(codec);
按照上述方式可解决针对qt4.8和qt5.0的版本的中文字符的显示问题。
易百纳技术社区内容涵盖机器视觉、音频处理、机器连接、机器感知以及智能终端,是一个多方向的专业性社区,致力于为更多工程师答疑解惑,创造机遇!