在做gui界面时,使用QTdesigner设计时,控件的名称等输入中文没有问题。为了更加灵活点,直接使用代码进行布局就很有必要了。这样就会出现中文的乱码。为了解决乱码,查看资料说时修改文件保存的编码,可是任然没有效果。
后来看到QT关于文字编码专门写了个类来处理。叫<QTextCodec>
使用它就可以解决这一问题,更多用法查看其说明就可以,只需要三行:
#include <QTextCodec>
QTextCodec *gbk = QTextCodec::codecForName("GB18030"); //创建一个gbk的编码器
QString str=gbk->toUnicode("你好"); //使用该编码器将gbk转Unicode。
就是这样了!
补充以下:
看到还可以这样:
QString::fromLocal8Bit("你好") //这才是最简单的