由于工作限制QT只能用很早的版本,学QT的时候,使按钮显示字符setText中放入中文字符,编译时报错
网上查了很多方法,主要是字符编码不一致的问题,这里总结一下
首先查一下编码是不是UTF-8
上方菜单栏中点击工具,在下拉列表里点击选项
在弹出的选项窗口中,进入文本编辑器->行为界面
右边文件编码模块,保证默认编码为UTF-8
然后加个头文件
#include <QTextCodec>
就加在出问题的那个文件里
把要输入的中文字符放进 QString::fromUtf8 函数里
这样改完还是报错(
有人说在中文字符最后加个空格把双引号和中文隔开
加上空格之后可以运行了但是是乱码
后来无意间发现一个很神奇的现象,中文字符个数是奇数的时候可以正常显示,是偶数就不行
最终找到的解决方法:
找到出问题的这个文件所在的位置
用记事本打开之后,点击文件->另存为
窗口下面有个编码
改成带有BOM的UTF-8
保存,直接替换掉原文件
回到QT,会弹出一个窗口
然后再运行,就可以成功显示中文了
标签:字符,中文,UTF,QT,编码,C2001,文件,错乱 From: https://www.cnblogs.com/rabbit1103/p/18329624