QT+MSVC模式 Qt Creator中文乱码解决方案

本人测试环境是QT5.9.3+MSVC2015

因为默认情况下,qtcreator是utf-8编码

而msvc编译器是utf-8+bom编码,这样就出现了,中文乱码,不管是qdebug()输出还是设置的qt窗体的中文均为乱码

如下图

QT+MSVC模式 Qt Creator中文乱码解决方案_第1张图片

而如果指直接用中文不通过QString s这个中间变量 有时候提示 常量中有换行符,同样是编码模式不同造成,都可以通过以下方式解决


方法就是在需要使用中文名的模块中添加

#if _MSC_VER >= 1600
#pragma execution_character_set("utf-8")
#endif

建议添加在构造函数中  

 ui->setupUi(this);

的下面或者任意引入中文之前即可,


我反正是添加在  


 ui->setupUi(this);


下面,


好了,再看看下图对比效果

QT+MSVC模式 Qt Creator中文乱码解决方案_第2张图片



以上均是本人亲测可用


你可能感兴趣的:(QT)