关闭

Qt中UTF-8转Unicode

6126人阅读 评论(0) 收藏 举报
分类:
#include <QtCore/QCoreApplication>
#include <QDebug>
#include <iostream>
#include <QTextCodec>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

   // const std::string str = "汉字";
    const QString str = "汉字";


    std::cout << str.length() << std::endl;

    QTextCodec *codec = QTextCodec::codecForName("UTF-8");
    QString unicode_str = codec->toUnicode(str.toLatin1().data());

    for(int i = 0;i <unicode_str.length();++i) {
        qDebug() << QString::number(unicode_str[i].unicode(),16);
    }
    
    return a.exec();
}

注意点了

1.

QTextCodec *codec = QTextCodec::codecForName("UTF-8");
这个的选择要和你系统的编码相对应,我的系统编码方案是UTF-8,所以长度为6,因为一个UTF-8的字符使用3个字节来表示,不然就会出错。还有就是对于QString
使用
str.toLatin1().data()
如果是std::string直接使用str.data()就可以了

0
0
查看评论

Qt入门之utf8与unicode转换

转载自http://m.blog.csdn.net/blog/u011791262/25040271 一、几种编码的了解 参考博客http://blog.csdn.net/polarman/article/details/1593159 二、简单的认识下QByteA...
  • Andy_baby
  • Andy_baby
  • 2015-07-02 16:20
  • 6516

Qt中文编码和QString类Unicode编码转换

1 window中文GBK编码和Unicode编码转换 //GBK‐> QString QString str = QString::fromLocal8Bit("新浪微博"); //QString ‐>...
  • g423tgl234
  • g423tgl234
  • 2016-08-16 16:38
  • 9728

Qt中UTF-8转Unicode

#include #include #include #include int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); // const std::string str = "汉...
  • zhx6044
  • zhx6044
  • 2013-12-02 09:09
  • 6126

qt 下 utf8编码与gbk编码的相互转换(附实例)

/*  * author: hjjdebug  * date: 2017年 09月 01日 星期五 22:35:38 CST  * 说明:  * 有一个打印机,只支持gdk编码, 而我的程序是linux, utf8是本地编码.  我需要一个简单的ut...
  • hejinjing_tom_com
  • hejinjing_tom_com
  • 2017-09-01 22:45
  • 775

Qt中的unicode转换

在Qt中,在大多数情况下都是采用unicode的形式存储的,但是QByteArray实际上是以char的形式存储的,因此转换成unicode表示的QString时需要根据编码的类型进行转换。 #include #include #include #include #include int ma...
  • u012689229
  • u012689229
  • 2014-12-18 10:28
  • 828

Qt中的unicode转换

在Qt中,在大多数情况下都是采用unicode的形式存储的,但是QByteArray实际上是以char的形式存储的,因此转换成unicode表示的QString时需要根据编码的类型进行转换。 [cpp] view plain copy ...
  • imxiangzi
  • imxiangzi
  • 2017-08-18 16:21
  • 171

Qt unicode字串转中文

有时候,直接在html里面获取的字符串就是带有"\u"的,然后直接显示的时候"\u"也会显示出来。 这里就是教你如何去掉"\u"。 QString filename = "\\u6211\\u662f\\u4e2d\\u6587&...
  • u012942868
  • u012942868
  • 2016-10-14 22:58
  • 794

Qt写入unicode编码格式的文本

1、文本流设置unicode小端模式 2、写入文本前两个字节FF FE 3、字符串转成unicode编码 QListQByteArray> list = QTextCodec::availableCodecs(); //可以获取Qt支持的编码,下面列出字符串的几种编码名称 //...
  • bladeandmaster88
  • bladeandmaster88
  • 2017-02-04 23:48
  • 846

Unicode与UTF-8互转(C语言实现)

>                 Tags: encoding,c 1. 基础 1.1 ASCII码 我们知道,...
  • tge7618291
  • tge7618291
  • 2012-05-24 20:58
  • 79550

C++中 Unicode 与 UTF-8 编码互转

1、简述最近在发送网络请求时遇到了中文字符乱码的问题,在代码中调试字符正常,用抓包工具抓的包中文字符显示正常,就是发送到服务器就显示乱码了,那就要将客户端和服务器设置统一的编码(UTF-8),而我们程序中 一般用的是Unicode编码,所以这就需要将中文字符转为UTF-8格式的,其他英文字符和数字就...
  • GoForwardToStep
  • GoForwardToStep
  • 2016-11-17 22:44
  • 8262
    个人资料
    • 访问:634606次
    • 积分:8184
    • 等级:
    • 排名:第2965名
    • 原创:213篇
    • 转载:18篇
    • 译文:4篇
    • 评论:262条
    博客专栏
    架构设计

    文章:27篇

    阅读:83942
    c++

    文章:35篇

    阅读:53093
    qt

    文章:53篇

    阅读:247833
    最新评论
    Test