Qt 乱码
2024-10-09 12:07:29
个人认识:
乱码的原因:
在编写代码时--》文件的格式---》编译器对文件进行编译的时候看到的只是二进制(乱码就出现在这里)
应合适方法 通知编译器(为什么说通知编译器呢?因为个人觉得这样好理解)使用的 字符串编码。这样在显示的时候就不会乱码了。
在QT5中,编写的代码格式若用utf-8保存,中文显示不会乱码。
但若用GBK或GB2312时候会乱码。。因此需通知编译器我的编码格式。
众所周知,汉字,占两个字节,8位。。
因此在使用汉字时加上:QString::fromLocal8Bit("我是中文");
另一种解决方法个人比较推荐的,就是用tr(“english” ) 通过汉化来显示为中文:
这里简单的说一下汉化过程:
所有需要汉化的字符串用tr(" ");包裹(用词不当但好理解)
若使用Qt creator 则在.pro文件假如一下代码:
TRANSLATOR=XXX.ts\ (若就一个 \可省略)
XXX2.ts
几种语言版本就加几个.ts 一般加一个中文版的就好
然后对项目进行编译;
使用lupdate xxx.pro 生成xxx.ts文件
用linguist打开.ts文件,设置英文对应的汉语,保存 并 lrelease 发布 生成.qm文件
如何使用.qm文件呢?
把qm文件加入到项目资源(非必须,可用绝对路径,但放到资源里比较好用呀)
使用QTranslator 对象进行load();加载
在用QApplication 对象进行installTranslator(translator); 安装
很形象的过程:翻译,发布,加载,安装
最新文章
- CRUD查询
- poj 3734 矩阵快速幂+YY
- opencv编程解决warning C4003: “max”宏的实参不足
- android开发之ExpandableListView的使用,实现类似QQ好友列表
- B - ACboy needs your help(动态规划,分组背包)
- Zookeeper与Curator二三事【坑爹】
- 7种清除浮动 (感觉br最好用然而我用的还是overflow)
- spring AOP capbilities and goal
- 免费ARP
- word2016怎么让目录索引显示在左边?
- 20155323刘威良 网络对抗《网络攻防》 Exp1 PC平台逆向破解(5)M
- spring整合ehcache 注解实现查询缓存,并实现实时缓存更新或删除
- 最小化安装CentOS7,没有ifconfig命令---yum search command_name搜索未知包名
- ManagedProperty not injected in @FacesConverter
- TColor转化为字符串
- Android 4.4 KitKat终于支持录屏(Screen Recording)了!
- 【目标检测大集合】R-FCN、SSD、YOLO2、faster-rcnn和labelImg实验笔记
- css控制默认滚动条样式
- 【BZOJ3998】弦论 【后缀自动机】
- Dubbo的Api+Provider+Customer示例(IDEA+Maven+Springboot+dubbo)
热门文章
- JQ滚动加载
- Dubbo 高危漏洞!原来都是反序列化惹得祸
- 使用eval将字符串转化成字典时报name 'null' is not defined错误解决办法
- java 数据结构(十二):Collections工具类的使用
- Kafka Eagle V2.0.0新版预览
- python利用difflib判断两个字符串的相似度
- ant-design-vue中实现modal模态框的复用(添加,编辑展示同一个模态框)
- CF940E Cashback 线段树优化DP
- javascript : 递归遍历数组
- Python数据分析之全球人口数据