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的版本的中文字符的显示问题。