首页 > 其他分享 >Qt中文编码的转换

Qt中文编码的转换

时间:2023-10-08 10:46:28浏览次数:38  
标签:编码 中文 code Qt utf8 arr QTextCodec buf

Windows容易出现GBK编码乱码的问题,这里使用QTextCodec来转码:

假设你现在的编码是utf8,但是显示在windows上是乱码,那么你可以尝试以下操作:

// utf8转GBK
    QString buf = "你好";
    QTextCodec* code = QTextCodec::codecForName("gb2312");
    QByteArray arr = code->fromUnicode(buf);

那么arr保存的就是gbk编码格式的字符。

如果你现在的编码是gbk文字,显示到Qt中是乱码,那么你可以尝试以下操作:

// GBK转utf8
    QString buf = "你好";
    QTextCodec* code = QTextCodec::codecForName("gb2312");
    QString arr = code->toUnicode(buf.toStdString().data(),buf.length());

那么arr保存的就是utf8编码格式的字符。

具体的函数参数入参类型详见函数说明。也可以用QByteArray类型,这不是关键。

还有很多的转码方式,只要能满足当前需求即可,不必在意哪一个更好。

 

标签:编码,中文,code,Qt,utf8,arr,QTextCodec,buf
From: https://www.cnblogs.com/Super-biscuits/p/17748312.html

相关文章

  • wsl中matplotlib安装中文字体
    wsl中matplotlib安装中文字体首先修改matplotlib配置的中文字体使用python定位字体路径importmatplotlibmatplotlib.matplotlib_fname()打开电脑的C:windows/fonts下,查找yahei关键字,将微软雅黑ttf字体拷贝,扔到wsl中显示的路径下的fonts/ttf文件夹里面。删除matplot......
  • qt ui编辑器的按钮相应槽函数为什么没有connect连接
    Qt自动连接槽 AutomaticConnections其原理是由UIC在编译期自动生成连接信号槽的代码,仅限于.ui文件,如果是在.cpp中手写的ui还是要自己connect自动连接可以省去connect信号槽的那句,只需按照规则声明槽函数即可voidon_<objectname>_<signalname>(<signalparameters>);例如......
  • 【实用】登录图形认证 图形码 验证码 中文图形验证码 动态图形验证码 图片验证码 验证
    后端测试: 主要code:https://www.cnblogs.com/liuguiqing/p/17722366.html ......
  • 哈弗曼编码与反编码的实现 java源代码
    哈弗曼编码与反编码的实现 java源代码下载地址:publicclassHuffman{ publicstaticvoidmain(String[]args){ new HaffmanFrame(); }}//主界面类importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;//主界面publicclassHaffmanFrameextends......
  • C# mqtt
    MQTT(MessageQueuingTelemetryTransport)是一种轻量级的消息传输协议,常用于物联网设备之间的通信。在C#中,我们可以使用MQTT库来实现与其他物联网设备之间的通信,本文将介绍如何使用C#中的MQTT库进行通信。一、安装MQTT库C#中有多个MQTT库可供选择,例如M2Mqtt、MQTTnet等,本文以MQT......
  • lumion中文官网-lumion软件中文版下载 安装包下载方式
    性能特点1、尽量最好地揭示您的修建愿景:种类操控键位是Lumion11的堆积性能。只需按下它,选择一种种类。您会立即获得一个均衡了光线、深入度和实际感的诱人图象。新的天空光日光摹拟器和柔和精美暗影加强。翻开它们,看着树叶和草变得很是传神。看桌子和书架上面的暗影变得奥妙而柔和......
  • lumion中文官网-lumion软件中文版下载 安装包下载方式
    性能特点1、尽量最好地揭示您的修建愿景:种类操控键位是Lumion11的堆积性能。只需按下它,选择一种种类。您会立即获得一个均衡了光线、深入度和实际感的诱人图象。新的天空光日光摹拟器和柔和精美暗影加强。翻开它们,看着树叶和草变得很是传神。看桌子和书架上面的暗影变得奥妙而柔和......
  • Lumion中文版下载-Lumion(含补丁)下载 安装包下载方式
    Lumion12.0是一个实时的3D可视化工具,用来制作电影和静帧作品,涉及到的领域包括建筑、规划和设计。它也可以传递现场演示。Lumion的强大就在于它能够提供优秀的图像,并将快速和高效工作流程结合在了一起,为你节省时间、精力和金钱。人们能够直接在自己的电脑上创建虚拟现实。通过渲染......
  • 安装包Matlab-中文科学编程软件-安装包下载方式
    Matlab应用是从外网软件论坛中引进的一款优质数据分析平台,该应用的UI布局设计参考了主流的办公应用,主体是由MATLAB和Simulink组成,内置了多达六百余种的函数运算模式,适合于每天需要处理大规模数据计算的行业,像仿真建模、系统算法的研发以及复杂的工程结构作图等,相信会是满意的选择。......
  • MQTT(消息队列遥测传输)
    MessageQueuingTelemetryTransport--消息队列遥测传输协议MQTT(MessageQueuingTelemetryTransport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代......