QT中文字符串个数问题
来源:互联网 发布:玉环网络安全教育平台 编辑:程序博客网 时间:2024/05/21 22:26
问题描述
1、代码文件中,中文常量字符串的个数为奇数,编译报错
2、error: C2001: newline in constant;
error: C2143: syntax error : missing ‘;’ before ‘return’;
解决方案
方案一
由于QT5中代码文件默认的编码方式UTF-8,而在这种编码的格式下不支持中文常量字符串个数出现奇数的情况。那么我们可以采取下面两步得以解决:
1、将此代码文件的编码方式转码成GB2312的格式,具体可以先新建一个文本文件(windows默认采用GB2312编码),将此代码文件里面的内容复制过去,并用此文件替换之前的代码文件,然后打开工程修改编码方式为GB2312
2、编译不会报错,但是结果并不是我们所预期的,这时:
代码应该稍作修改QString str = QString::fromLocal8Bit(“中文呢”);中文前都需要加上函数,是告诉编译器这里的“中文呢”应该按照GB2312的编码格式转码成Unicode码。
方案二
由于QT5中代码文件默认不支持中文常量字符串个数出现奇数的情况,我们可以先将中文转码成Unicode码(\u****),或者UTF-8码(\x**\x**\x**),然后将中文替换成对应的Unicode码或者UTF-8码。例如:
QString str1 = "\xe4\xb8\xad\xe6\x96\x87\xe5\x91\xa2";//"中文呢"对应的utf-8码QString str2 = QString::fromLocal8Bit("\u4e2d\u6587\u5462");//"中文呢"对应的Unicode码
当然,这需要得到对应的编码才可以。那就需要个转码器,下面提供个下载的链接http://download.csdn.net/detail/tadpole099/9854647
阅读全文
0 0
- QT中文字符串个数问题
- qt & qt creator 中文字符串查找问题
- QT中文乱码问题(字符串变量)
- QT 中文字符串排序
- 【QT】字符串中文
- QT中文显示问题
- qt 中文乱码 问题
- QT 中中文问题
- Qt 中文显示问题
- qt中文乱码问题
- QT中文编码问题
- QT中文显示问题
- qt中文乱码问题
- QT 5.1 中文问题
- qt中文乱码问题
- QT 中文乱码问题
- qt中文乱码问题
- qt中文乱码问题
- MySQL5.7的复制(一补充)
- 把信息保存在html文件中的代码
- HDU
- 在windows下安装Python和pip
- 测试个人中心
- QT中文字符串个数问题
- Windows下的Rime輸入法與小鶴雙拼的配置
- 463. Island Perimeter
- yolo
- LeetCode之Largest Number
- 【opencv】目标识别——HSV颜色识别
- [leetcode]: 257. Binary Tree Paths
- 问题分享:Greenplum Compression failed: insufficient memory
- 坚持#第182天~熟能生巧