【Qt问题】Qt中文乱码问题解决方案(详细汇总)
一、问题描述:
由于Qt对中文的支持不是很好,使用QtCreator进行开发的过程中,经常会出现各种乱七八糟的中文乱码问题,比如我前面遇到的
【Qt问题】初始化菜单QMenu的时候,一直报错-CSDN博客
写的没有任何语法问题,报的错却非常离谱,我们如何理这种问题?
二、解决办法:
(1)粘贴别人的代码时,现在记事本里“过一遍”, 再贴到QtCreator;
这是因为有时候从其他地方复制的代码可能包含特殊字符或不同编码格式,导致在Qt Creator中显示乱码。在记事本中查看代码可以帮助发现并纠正这些问题,确保代码能够正确显示,这个很多时候非常管用。
(2)使用u8, 比如:ui. pushButton->setText (u8”你好");
这是因为在中文前面加一个u8,可以指定字符编码为UTF-8,这样可以确保中文字符能够正确识别和显示。
(3)不使用QtCreator开发,直接使用vs2019
vs2019对中文支持更高,更不容易出现中文乱码问题。
(4)QtCreator---选项--文本编辑器--- UTF8 BOM总是删除
这是因为这样设置可以确保在Qt Creator中编辑UTF-8编码的文件时,不会在文件开头插入BOM(字节顺序标记)。BOM是一种特殊的标记,有时会导致一些编辑器或程序解析文件时出现问题。通过设置总是删除UTF-8 BOM,可以避免这种潜在问题,确保文件的编码和内容正确无误。
(5)在要使用中文的文件最上方加一行代码 #pragma execution_ character_ set("utf-8")
这是因为这行代码告诉了编译器要使用UTF-8字符集来处理该文件中的字符。这样做可以确保编译器正确地识别和处理文件中的中文字符,避免出现乱码或编译错误。
有用的知识又增加了~