小记——Qt Creator MSVC版本中文乱码

Qt Creator MSVC版本中文乱码

 

一、场景

在使用msvc版本的Qt开发的时候,会遇到了中文乱码的问题。以我的电脑场景说下解决方式。

二、配置

Qt:Qt 5.8.0(msvc 2015,32 bit)

操作系统:win10 64位。

三、原因

1. Qt Creator的编辑器默认使用UTF-8编码方式来读取文本文件。在Windows中文简体操作系统,编码使用的是GB2312。而Visual Studio保存文件时默认采用的是本地编码方式。如果使用Qt Creator读取由Visual Studio创建的文件,那么编辑器就会以UTF-8编码格式读取GB2312编码格式的文件,出现中文乱码,因为这两套编码系统对汉字编码是不同的。在英文下,UTF-8和GB2312格式下一个字母是1个字节。中文下,一个汉字GB2312占2个字节,UTF-8下占3个字节。

2. MSVC在编译时,会根据源代码文件有无BOM来定义源码字符集。如果有BOM,则按BOM解释识别编码;如果没有,则使用本地字符集,对于简体中文的Windows操作系统就是GB2312。那么,当MSVC遇到一个没有BOM的UTF-8编码的文件时,它通常会把文件看作GB2312的来处理。如果文件全是英文没有问题,但如果包含中文,编译器就会出现误读。这种情况下,Qt Creator编辑器是正常的。

四、解决方式

1、更改Qt的设置

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yav5LiA5bed,size_20,color_FFFFFF,t_70,g_se,x_16

 2、代码中QString字符串使用

QStringLiteral("中文汉字")

如果还有其他的设置方式,稍后会在这里继续更新。

 

本文原创作者:冯一川(ifeng12358@163.com),未经作者授权同意,请勿转载。

 

 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冯一川

谢谢老板对我的支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值