qt解决中文乱码问题

本文澄清了关于Qt5中文处理的误解,指出乱码问题往往源于不了解文件编码。使用UTF-8无BOM编码可以避免大部分乱码,同时提供了解决VS编译器和Qtcreator设置BOM问题的方法。
摘要由CSDN通过智能技术生成

 亲测有效!!!

现状:网上总是存在众多关于Qt5乱码的问题和文章,离谱的是很多都是用Qt creator这个工具,最后得到的结论是Qt在中文上跨平台做的不好,比如在中文处理上要用类似latin1等函数。

澄清:Qt对中文支持没啥问题,也不用什么特殊的函数,为了解决烦恼,必须了解下文件编码知识,比如utf-8可以不要bom,utf-32为啥需要bom等等。简单来说,所有源码文件,均保存为 

UTF-8 无bom,基本不再有乱码,绝大多数情况下,根本不需要类似latin1等函数,用不到的!

无bom 无bom 无bom,非常重要!在各种文章的轰炸下,很多时候大家都知道选择UTF-8,但是一定要注意bom

1,在项目pro文件中加上这段代码,VS编译器默认使用GBK编码,需要特别配置

win32-msvc* {
    QMAKE_CXXFLAGS += /source-charset:utf-8 /execution-charset:utf-8
}

2,Qt creator设置总是删除 bom

构建套件->文本编辑器->行为->UTF-8 BOM总是删除

 

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

IIIIIII_II

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值