QT乱码总结0.Qt乱码产生因素
https://blog.csdn.net/liujiayu2/article/details/103167953

QT乱码总结1.Unicode 和 UTF-8
https://blog.csdn.net/liujiayu2/article/details/103168020

QT乱码总结2.gbk和ANSI和gb2312的区别
https://blog.csdn.net/liujiayu2/article/details/103168168

QT乱码总结3.UNICODE有无BOM
https://blog.csdn.net/liujiayu2/article/details/103168236

QT乱码总结4.细谈本地编码
https://blog.csdn.net/liujiayu2/article/details/103168249

QT乱码总结5.万能解决方案
https://blog.csdn.net/liujiayu2/article/details/103168272

QT乱码总结6.编码测试和总结一
https://blog.csdn.net/liujiayu2/article/details/103168289

QT乱码总结7.编码测试和总结二
https://blog.csdn.net/liujiayu2/article/details/103168301

QT乱码总结8.编码测试和总结三
https://blog.csdn.net/liujiayu2/article/details/103168307

QT乱码总结9.编码测试和总结四
https://blog.csdn.net/liujiayu2/article/details/103168317

QT乱码总结编码测试工程:
https://download.csdn.net/download/liujiayu2/11987065

qt乱码问题有没有一个终极解决方案,我不想关心什么乱七八糟的编译器,操作系统,文本采用的鸟编码,我就想我一写他到哪里都是正确的。答案是有,我们看一下qt自己是怎么处理中文的。新建一个工程,添加一个标签,写上中文“我爱中国”,如图,

看一下,qt是怎么处理这个事情的。

经过查看qt自动生成的代码,我们找到了它,

“我爱中国”这四个汉字是由12个3位数的数字转化过来的,这12个数字很是眼生啊,回顾前面测试时候我们总结的编码,

/测试编码

我爱中国

ANSI(GBK)编码:CE D2 B0 AE D6 D0 B9 FA

UTF-8编码:E6 88 91 E7 88 B1 E4 B8 AD E5 9B BD

UTF-8编码(bom):EF BB BF E6 88 91 E7 88 B1 E4 B8 AD E5 9B BD

UNICODE编号:\u6211\u7231\u4e2d\u56fd

/

感觉八竿子打不着啊,犯了好一阵子难,最终发现了规律,首先12个数字,我们看到只有UTF-8编码无BOM正好是12个。\346怎么和E6对应起来啊,拿起计算机,转化E6位10进制,230,转化为八进制正好是346,哈哈,这也行,从业C++开发8-9年,第一次看到八进制用到实战中。

看看如何通用化:

QApplication::translate("TestClass", "\346\210\221\347\210\261\344\270\255\345\233\275", 0, QApplication::UnicodeUTF8)

这个函数返回的是一个QString,第一个参数随意填写,第二参数是汉字utf-8编码的八进制。以后遇见汉字就这么处理,这样就能拍出一切干扰保证无乱码。有朋友会问,第二参数,弄得时候有点麻烦事儿,这里介绍一个简单方法:既然qt可以自动生成,以后遇见汉字就让qt帮助我们生成,(专门写个临时工程,帮助生成八进制的汉字)

最后,以前看到过qt官方推荐的就是这种用法,具体在哪里忘了。理论上讲这种方法是可以万能的,缺陷就是可读性差,如果实在解决不了编码问题,可以作为保底方案。

QT乱码总结5.万能解决方案相关推荐

  1. QT乱码总结9.编码测试和总结四

    QT乱码总结0.Qt乱码产生因素 https://blog.csdn.net/liujiayu2/article/details/103167953 QT乱码总结1.Unicode 和 UTF-8 h ...

  2. QT乱码总结8.编码测试和总结三

    QT乱码总结0.Qt乱码产生因素 https://blog.csdn.net/liujiayu2/article/details/103167953 QT乱码总结1.Unicode 和 UTF-8 h ...

  3. QT乱码总结7.编码测试和总结二

    QT乱码总结0.Qt乱码产生因素 https://blog.csdn.net/liujiayu2/article/details/103167953 QT乱码总结1.Unicode 和 UTF-8 h ...

  4. QT乱码总结6.编码测试和总结一

    QT乱码总结0.Qt乱码产生因素 https://blog.csdn.net/liujiayu2/article/details/103167953 QT乱码总结1.Unicode 和 UTF-8 h ...

  5. QT乱码总结4.细谈本地编码

    QT乱码总结0.Qt乱码产生因素 https://blog.csdn.net/liujiayu2/article/details/103167953 QT乱码总结1.Unicode 和 UTF-8 h ...

  6. QT乱码总结3.UNICODE有无BOM

    QT乱码总结0.Qt乱码产生因素 https://blog.csdn.net/liujiayu2/article/details/103167953 QT乱码总结1.Unicode 和 UTF-8 h ...

  7. QT乱码总结2.gbk和ANSI和gb2312的区别

    QT乱码总结0.Qt乱码产生因素 https://blog.csdn.net/liujiayu2/article/details/103167953 QT乱码总结1.Unicode 和 UTF-8 h ...

  8. QT乱码总结1.Unicode 和 UTF-8

    QT乱码总结0.Qt乱码产生因素 https://blog.csdn.net/liujiayu2/article/details/103167953 QT乱码总结1.Unicode 和 UTF-8 h ...

  9. QT乱码总结0.Qt乱码产生因素

    QT乱码总结0.Qt乱码产生因素 https://blog.csdn.net/liujiayu2/article/details/103167953 QT乱码总结1.Unicode 和 UTF-8 h ...

最新文章

  1. esp8266 防掉线方法_esp8266 smartconfig-智能配网分析和使用及注意事项
  2. 又拍网架构中的分库设计
  3. 如何判断两个平面相交_数学提高平面与平面垂直的判定方法是什么
  4. 用scikit-learn进行LDA降维(转载+注释)
  5. Python四大金刚之一:列表
  6. php print r用法,php中echo(),print(),print_r()用法
  7. windows部署tomcat服务自动启动,同时解决服务无法启动的问题
  8. 一个简单的微信小程序支付demo
  9. 苹果屏保壁纸_抖音超火的时间轮盘屏保,安卓苹果都可以用。
  10. Python如何解决中文乱码
  11. Button按钮及其点击事件方式
  12. Intel处理器概述
  13. 2019年春季学期《C语言程序设计II》助教注意事项
  14. 玫瑰线轨迹如何规划?(desmos+ROS2+turtlesim+……)
  15. 在 Shell 脚本中调用另一个 Shell 脚本的三种方式
  16. Verilog RTL 代码实战 01——半加器全加器
  17. 关于 右键新建选项 假死 死机 卡机 崩溃 闪退 的问题 (含 无法拖拽文件 或者ps无法拖拽等)
  18. 【345期】SpringCloud Gateway API 接口安全设计(加密 、签名)
  19. C++跨平台技术 - 线程Thread
  20. 关于在打败C魔王前经常被背刺这件事(C语言常见问题描述及解决方案和原因)

热门文章

  1. MQ事务消息实现方案
  2. 分布式文件系统研究-测试-搭建测试环境
  3. HDFS的API操作-文件的上传和下载
  4. 桥接模式源码解析(jdk)
  5. Dubbo支持的协议
  6. jvm_虚拟机参数讲解(一)
  7. 13号线ab线规划图_大连地铁2050路线规划图
  8. python实现二叉搜索树_python实现二叉查找树
  9. 复习webpack4之Code Splitting
  10. .NET分布式缓存Redis从入门到实战