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