引言
使用Visual Studio + Qt环境开发程序时经常会遇到中文显示乱码的问题,查阅资料找到相关问题的答案,在此记录.
问题
UTF8 No Bom
QMessageBox::information(this, "正常", QStringLiteral("乱码"), QString::fromLocal8Bit("乱码"));
UTF8 With Bom
QMessageBox::information(this, "乱码", QStringLiteral("正常"), QString::fromLocal8Bit("正常"));
总结
-
当编码是UTF-8带BOM时,在不配置国际化翻译的情况下,若要正常显示中文,则需要QStringLiteral() 或 QString::fromLocal8Bit()
-
当编码是UTF-8不带BOM时,在不配置国际化翻译的情况下,双引号就可以正常显示中文,无需过多设置
本文来自投稿,不代表本站立场,如若转载,请注明出处: