Qt直接使用中文的乱码问题
在main文件中添加代码:
#include <QTextCodec> int main(int argc, char **argv) { .................... QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312")); //“GB2112”或者"GBK"或者“System” QTextCodec::setCodecForLocale(QTextCodec::codecForName("GB2312")); QTextCodec::setCodecForCStrings(QTextCodec::codecForName("GB2312")); .................... }
到底选择哪个编码,根据操作系统而定,如Windows下,“GB2312”就可以,而Fedora下就得用"GBK"或者"System"。
注:“System”是指获取系统编码