您当前的位置: 首页 >  qt

顺其自然~

暂无认证

  • 2浏览

    0关注

    1317博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

qt中的toUtf8, toLatin1, Local8bit, toUcs4

顺其自然~ 发布时间:2022-06-01 14:12:44 ,浏览量:2

toLatin1、toLocal8Bit都是QString转QByteArray的方法,Latin1代表ASCII,Local8Bit代表unicode

1、首先说下字符集。

gb18030字符集兼容了gbk字符集,以两个字节表示一个文字。windows系统可能使用的就是这两种的一种。

unicode字符集以2个或以上的字节表示一个汉字。

通用字符集(Universal Character Set, UCS)是由ISO制定的ISO 10646(或称ISO/IEC 10646)标准所定义的标准字符集。UCS-2用两个字节编码,UCS-4用4个字节编码。

utf8字符集以2个或以上的字节表示一个汉字。实际上具体的数值和unicode有很大的相关性。

ISO-8859-1编码是单字节编码,向下兼容ASCII,其编码范围是0x00-0xFF。亦称为Latin1。

2、QString内部可能是使用unicode字符集来存储文字。具体输出的时候,就可以输出该文字对应的unicode, ucs4, utf8, gb18030的编码。

3 代码示例

环境:qt5.5、msvc2013

使用qtcreator创建main.cpp,它默认代码里的汉字使用utf8字符集。不要使用msvc编译器,因为它默认汉字使用gb18030字符集

#include 
#include 
int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    QString tmp="汉字";
    qDebug()             
关注
打赏
1662339380
查看更多评论
0.0398s