Qt中文乱码问题怎么解决

Qt中文乱码问题怎么解决,第1张

(1)、中文编码一律使用QString::fromLocal8Bit()接口。

原因:需要支持QT4版本。QStringLiteral()方法也可取,但是它只支持QT5版本,如果没有版本问题,可以使用。

(2)、CPP等文件编码一律使用UTF8—BOM格式。

原因1:UTF8-无BOM在使用window编译器cl中编译会失败,当然除非你Windows中使用QT的Mingw版本编译开发。

原因2:不使用GBK的文件编码是为了更容易的兼容到linux版本与windows中,否则你需要改QtCreate的编码环境与linux的系统字符环境。

设置编码读取:

    QTextStream in(&file)

    in.setCodec("UTF-8")

    while (!in.atEnd())

    {

        QString strRead = in.readLine()

    }

出现了乱码

解决方法:

安装qt,初学者建议安装以上推荐的mingw版,不用配置任何环境,启动为qtcreator.exe

2、新建项目以后,会出现两种情况:

1、文件乱码,控制台输出不乱码

2、文件不乱码,控制台输出乱码

3、我们需要做的是:选择工具-->选项-->文本编辑器

4、选择“显示“选项卡,勾选最后一个勾:display file encoding,然后右下角apply-->ok

5、这时候在你的文本编辑区域右上角就会显示一个文件编码的选项。

6、点击该编码,根据你的系统进行选择,如果是window选择GBK,其他系统如Linux选择utf-8,选好以后,点击按编码载入即可。如果你原本的文件里是utf-8模式下写的中文,那么你的编辑区域中文会乱码,只需要重写即可。否则下次仍为乱码。以后编写中文,window全在gbk模式下即可,qt乱码主要还是文件保存的编码格式与系统的编码格式不同造成的。

7、最后,在工具--->选项里,修改行为,文件编码中选择和自己系统相同的编码,这样保证编辑器每次打开你保存的代码也是以这个格式打开的,这样就确保编辑后保存,再次打开乱码的情况.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11863890.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存