怎么在欧美做网站推广,网站登录密码忘记了,wordpress乐趣公园缩略图不显示,th7 wordpress 汉化文章目录 vs编译器下第一种解决方式第二种解决方式 Qt编译器下 我们在使用qt的时候有时候会遇到打印中文字符串的时候出现中文乱码的问题#xff0c;主要是由于Qt的QString字符串存储的方式是使用utf-8的编码方式#xff0c;如果我们本地的文件是使用GBK方式的编码再使用中文… 文章目录 vs编译器下第一种解决方式第二种解决方式 Qt编译器下 我们在使用qt的时候有时候会遇到打印中文字符串的时候出现中文乱码的问题主要是由于Qt的QString字符串存储的方式是使用utf-8的编码方式如果我们本地的文件是使用GBK方式的编码再使用中文字符串的话就会出现打印乱码的情况。 vs编译器下 首先我们在vs编译器下使用中文字符串实验一下 
#include QtWidgets/QApplication
#include QDebug
#include QMessageBox
#include QtCore5Compat/qtextcodec.h
#include iostream
using namespace std;
int main(int argc, char *argv[])
{QApplication a(argc, argv);QString str  中文测试;qDebug()  str;cout  str.toStdString()  endl;QMessageBox::information(0, title, str);return a.exec();
} 现在如果我们在文件中使用中文字符串的话打印出来都是乱码的因为我们的文件是以GBK编码方式的而QString内部存储字符串是以UTF-8的方式来的所以会出现乱码。 
第一种解决方式 
我们可以将文件的编码方式修改为utf-8方式编码的即可。  在高级选项中可以进行设置。   但是我们看到使用c方式打印的字符串乱码这是由于cout需要是以GBK方式编码的字符串进行打印。 
cout  str.toLocal8Bit().toStdString()  endl;将字符串先转化成本地的编码方式即GBK的编码方式。  
第二种解决方式 Qt内部其实提供了当我们文件的编码方式为GBK时将字符串转化为UTF-8编码方式赋给QString。 
QString str  QString::fromLocal8Bit(中文测试);Qt编译器下 
#include widget.h#include QApplication
#include QDebug
#include QMessageBox
#include iostream
using namespace std;
int main(int argc, char *argv[])
{QApplication a(argc, argv);QString str  中文测试;qDebug()  str;cout  str.toLocal8Bit().toStdString()  endl;QMessageBox::information(0, title, str);return a.exec();
} 没有进行设置的话Qt的文件编码方式都是utf-8所以直接使用中文也不会出问题。  需要修改的话可以在这边进行修改。