QString cout 乱码问题
解决QString在终端输出乱码问题,使用QString.toLocal8Bit().data() 或者 QString.toLocal8Bit().constData()函数
实验:
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QString str="你好";
cout<<str.toStdString()<<endl;
cout<<str.toLatin1().toStdString()<<endl;
cout<<str.toUtf8().toStdString()<<endl;
cout<< str.toLocal8Bit().data()<<endl;
cout<< str.toLocal8Bit().constData()<<endl;
return a.exec();
}
实验结果:
浣犲ソ
??
浣犲ソ
你好
你好