Qt中文个数奇数时出现问号解决
创始人
2024-12-26 12:35:10
0

Qt中文个数奇数时出现问号解决

目录

  • Qt中文个数奇数时出现问号解决
    • 问题背景
    • 问题场景
    • 解决方案

问题背景

最近在开发一个小工具,涉及到一些中文注释自动打印,于是摸索如何把代码里面的中文输出到csv文件中,出现了乱码,按照网上的攻略又倒腾了好几次,发现在windows平台中,用GBK格式打印中文时,个数为奇数总是在结尾出现问号,后来又结合网上几篇指导终于解决。

问题场景

1、文件编码格式为utf-8无bom;
2、cpp代码中解析格式为gbk(这里我跟网上的攻略不同,我用utf-8解析总是各种乱码,但是用gbk就出现局部问号)
3、本地Qt编译器格式也是utf-8;
在这里插入图片描述
4、windows输出格式调整也是utf-8;

解决方案

1、将有中文打印的cpp转成utf-8带BOM格式;(可以用notepad++进行转换,比较方便)
2、对应cpp文件中添加代码:

#if _MSC_VER >= 1600 #pragma execution_character_set("utf-8") #endif 

3、函数调用接口添加代码:

QTextCodec::setCodecForLocale(QTextCodec::codecForName("GBK")); std::setlocale(LC_ALL, "en_US.UTF-8"); 

这里输出文件格式亲测可以不用手动修改,我猜应该会根据当前系统编码格式自动生成。
4、清理项目,防止编译中间件残留导致未编进去没生效,重新全量编译;
5、打开文件,文件输出成功!

相关内容

热门资讯

第五分钟了解!新青鸟必胜(辅助... 第五分钟了解!新青鸟必胜(辅助)决胜山西麻将开挂辅助工具-总是存在有修改器1、超多福利:超高返利,海...
第十分钟了解!朱雀开心罗松开挂... 第十分钟了解!朱雀开心罗松开挂(辅助)大神棋牌开挂辅助软件-总是是有修改器1、每一步都需要思考,不同...
第一分钟了解!天天微友开控制多... 第一分钟了解!天天微友开控制多少钱(辅助)米乐开挂辅助安装-都是是真的工具1、进入游戏-大厅左侧-新...
3分钟了解!天天卡五星辅助(辅... 3分钟了解!天天卡五星辅助(辅助)掌中乐开挂辅助软件-都是是真的软件1、全新机制【天天卡五星辅助ai...
第7分钟了解!宝宝临海辅助器(... 第7分钟了解!宝宝临海辅助器(辅助)爱玩联盟开挂辅助平台-果然真的是有辅助宝宝临海辅助器辅助器是一种...
8分钟了解!陕麻圈透视科技工具... 8分钟了解!陕麻圈透视科技工具(辅助)新青鸟开挂辅助辅助器-其实有挂工具1、完成陕麻圈透视科技工具有...
第一分钟了解!闲来贵州黑科技辅... 第一分钟了解!闲来贵州黑科技辅助软件(辅助)中至景德镇麻将开挂辅助平台-其实是真的脚本1、金币登录送...
第七分钟了解!贪吃蛇辅助器20... 第七分钟了解!贪吃蛇辅助器2022(辅助)温州茶苑开挂辅助下载-果然真的是有下载1、用户打开应用后不...
一分钟了解!广西八一字牌辅助(... 一分钟了解!广西八一字牌辅助(辅助)叮叮娱乐开挂辅助工具-总是真的有app1、让任何用户在无需广西八...
第十分钟了解!福建13水源码(... 第十分钟了解!福建13水源码(辅助)么么棋牌开挂辅助安装-一直真的是有软件1、金币登录送、破产送、升...