问题描述:
在windows中使用Qt MSVC版本编译Qt项目时,在代码中使用中文,在显示的时候会出现乱码;但是在Qt Designer时直接输入的中文字符可以正常显示。
解决办法:
Qt默认的编码格式为UTF-8,MSVC使用的编码为GBK编码,当使用Qt MSVC版本进行编译,而源码采用UTF-8保存时就会出现中文乱码问题。
方法一:
使用QTextCodec来把所有使用到中文的地方进行转换
QTextCodec* m_pCodec = QTextCodec::codecForName("GBK");
m_pCodec->toUnicode("中文字符");
方法二:
在.pro文件中添加
msvc
{
QMAKE_CFLAGS += /utf-8
QMAKE_CXXFLAGS += /utf-8
}