亲测有效!!!
现状:网上总是存在众多关于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总是删除