Qt 5以上关于中文乱码解决
来源:互联网 发布:js设置页面自动刷新 编辑:程序博客网 时间:2024/06/08 07:03
Qt 5以上关于中文乱码解决
1 cpp文件编码格式和程序运行字符串解析时用的编码格式两个概念,但是cpp文件编码会影响到程序运行时的解析,所以建议将文件编码格式和程序运行字符串解析时用的编码格式设置成一致。这样可以避免中文乱码
也就是说编译器在编译的时候根据文件的编码格式,编译生成的信息,程序运行时要对字符串进行解析,那么就要设置字符串解析时用的编码格式就要和编译生成信息的编码格式一样,不然就乱码了,如果不设置字符串解析时用的编码格式,就会用默认的编码格式去解析。(个人理解,说的不对请指正)
还要看编译器mingw默认是utf-8的,msvc默认的是ANSI
2首先需要了解的是 qt creator使用的是什么编译器 mingw 还是mvsc
(1) msvc编译的文件是ANSI,而QString默认的编码格式unicode的,因此必须QString进行转码才能显示中文。
(2) mingw编译的文件编码格式默认的是utf-8,如果文件编码格式是utf-8,那么就不需要再进行转码了(为什么)
问题:为什么QString的编码格式是unicode,而文件编码格式是utf-8能正常解析呢?
答案:unicode是个大类,包括utf-8格式、utf-16等格式(别人的解释)
3、乱码常见情况:
(1)文件编码格式 和 程序中字符串转码的格式不一致。
比如:文件编码是ANSI,字符串转码成utf-8
如何查看文件和修改编码格式http://jingyan.baidu.com/article/ae97a646d0ddd4bbfc461d6b.html
Qt creator修改文件编码说明:
这里说明你在qt creator一开始创建文件编码格式,如果你之后修改了项目中的文件编码格式,那么它显示的还是创建文件编码格式,而不是修改后的文件编码格式。因此这里的作用是设置开始创建项目时文件的编码格式,再文件项目文件被创建后,就不能通过这里修改文件编码格式。如果要修改 参照http://jingyan.baidu.com/article/ae97a646d0ddd4bbfc461d6b.html
1 cpp文件编码格式和程序运行字符串解析时用的编码格式两个概念,但是cpp文件编码会影响到程序运行时的解析,所以建议将文件编码格式和程序运行字符串解析时用的编码格式设置成一致。这样可以避免中文乱码
也就是说编译器在编译的时候根据文件的编码格式,编译生成的信息,程序运行时要对字符串进行解析,那么就要设置字符串解析时用的编码格式就要和编译生成信息的编码格式一样,不然就乱码了,如果不设置字符串解析时用的编码格式,就会用默认的编码格式去解析。(个人理解,说的不对请指正)
还要看编译器mingw默认是utf-8的,msvc默认的是ANSI
2首先需要了解的是 qt creator使用的是什么编译器 mingw 还是mvsc
(1) msvc编译的文件是ANSI,而QString默认的编码格式unicode的,因此必须QString进行转码才能显示中文。
(2) mingw编译的文件编码格式默认的是utf-8,如果文件编码格式是utf-8,那么就不需要再进行转码了(为什么)
问题:为什么QString的编码格式是unicode,而文件编码格式是utf-8能正常解析呢?
答案:unicode是个大类,包括utf-8格式、utf-16等格式(别人的解释)
3、乱码常见情况:
(1)文件编码格式 和 程序中字符串转码的格式不一致。
比如:文件编码是ANSI,字符串转码成utf-8
如何查看文件和修改编码格式http://jingyan.baidu.com/article/ae97a646d0ddd4bbfc461d6b.html
Qt creator修改文件编码说明:
这里说明你在qt creator一开始创建文件编码格式,如果你之后修改了项目中的文件编码格式,那么它显示的还是创建文件编码格式,而不是修改后的文件编码格式。因此这里的作用是设置开始创建项目时文件的编码格式,再文件项目文件被创建后,就不能通过这里修改文件编码格式。如果要修改 参照http://jingyan.baidu.com/article/ae97a646d0ddd4bbfc461d6b.html
阅读全文
0 0
- Qt 5以上关于中文乱码解决
- Qt 中文乱码解决
- QT解决中文乱码
- qt中文乱码解决
- QT中文 乱码解决
- Qt中文乱码解决
- qt中文乱码解决
- QT 中文乱码解决
- Qt+Mysql5.5中文乱码解决
- Qt Simulator中文乱码解决
- QT中文乱码的解决
- Qt 中文乱码解决大全
- QT中文乱码的解决
- QT中文显示乱码解决
- QT中文显示乱码解决
- QT中文实现乱码解决
- QT中文显示乱码解决
- Qt 解决中文乱码问题
- 如何开启QtCreator的代码自动补全功能
- phpcmsv9实现手机端与PC端双模板的方法与详细教程(转)
- JSONObject的toBean 和 fromObject
- 如何判断一个数的二进制有多少个1
- NSLayoutConstraint
- Qt 5以上关于中文乱码解决
- D
- Eclipse快捷键
- Linux文件管理
- 洛谷 P3203 [HNOI2010]BOUNCE 弹飞绵羊(分块)
- 用MyEclipse10开发基于JAX-WS的Web Service实例,接口查询oracle数据库,SpringMVC controller调用接口,附带源码
- java.lang.OutOfMemoryError: Failed to allocate a 3110419 byte allocation with 741152 free bytes and
- 经典笔试题——去掉字符串中连续出现K个0的子串
- Django+mysql支持emoji表情