AtUtf8.h

  1. #ifndef _QT_UTF8_H
  2. #define _QT_UTF8_H
  3. #include <QString>
  4. #include <string>
  5. using std::string;
  6. class AfUtf8
  7. {
  8. public:
  9. // QString(Unicode) -> std::string (UTF8)
  10. static string ToString(const QString& qstr)
  11. {
  12. QByteArray arr = qstr.toUtf8();
  13. string cstr = arr.data();
  14. return cstr;
  15. }
  16. // std::string (UTF8) -> QString(Unicode)
  17. static QString ToQString(const string& cstr)
  18. {
  19. QString qstr = QString::fromUtf8(cstr.c_str(), cstr.length());
  20. return qstr;
  21. }
  22. };
  23. #endif

AtGbk.h

  1. #ifndef _QT_GBK_H
  2. #define _QT_GBK_H
  3. #include <QString>
  4. #include <QTextCodec>
  5. #include <string>
  6. using std::string;
  7. class AfGbk
  8. {
  9. public:
  10. // QString(Unicode) -> std::string (GBK)
  11. static string ToString(const QString& qstr)
  12. {
  13. QTextCodec* pCodec = QTextCodec::codecForName("gb2312");
  14. if(!pCodec) return "";
  15. QByteArray arr = pCodec->fromUnicode(qstr);
  16. string cstr = arr.data();
  17. return cstr;
  18. }
  19. // std::string (GBK) -> QString(Unicode)
  20. static QString ToQString(const string& cstr)
  21. {
  22. QTextCodec* pCodec = QTextCodec::codecForName("gb2312");
  23. if(!pCodec) return "";
  24. QString qstr = pCodec->toUnicode(cstr.c_str(), cstr.length());
  25. return qstr;
  26. }
  27. };
  28. #endif

http://blog.csdn.net/bladeandmaster88/article/details/53469959

string与QString转换(string既可以是utf8,也可以是gbk)的更多相关文章

  1. QString 与 string转换

    [1]QString 转换为string QString qString("好好学习天天向上"); std::string stdString = qString.toStdStr ...

  2. QString与string的相互转换

    1.QString转换String string s = qstr.toStdString(); 2.String转换QString QString qstr2 = QString::fromStdS ...

  3. QString与string的相互转换【转载】

    文章转载自https://blog.csdn.net/qq_33485434/article/details/80680506 1.QString转换String string s = qstr.to ...

  4. JAVA中List转换String,String转换List,Map转换String,String转换Map之间的转换类

    <pre name="code" class="java"></pre><pre name="code" cl ...

  5. android 中List转换String,String转换List 改进版本

    原来博客地址http://blog.csdn.net/qq7342272/article/details/6830907 使用原作者贴的代码不是很好用,不能正常运行,所以我稍微改进了一下,特来分享给大 ...

  6. C#中char[]与string之间的转换;byte[]与string之间的转化

    目录 1.char[]与string之间的转换 2.byte[]与string之间的转化 1.char[]与string之间的转换 //string 转换成 Char[] string str=&qu ...

  7. string与QString之间的转换(两种方法:fromStdString直接转换,或者fromLocal8Bit(cstr.c_str())

    string str;QString qstr; //从QString 到 std::stringstr = qstr.toStdString(); //从std::string 到QStringqs ...

  8. Qt QString与string的转换

    QString --> string QString.toStdString();   string --> QString QString::fromStdString(string);

  9. QString, Std::string, char *相互转换

    Qt 库中对字符串类型进行了封装,QString 类提供了所有字符串操作方法,给开发带来了便利. 由于第三方库的类型基本上都是标准的类型,即使用std::string或char *来表示字符 (串) ...

随机推荐

  1. 第三方微信支付,WAP、H5、APP、公众号支付的区别

    你说一个微信支付被腾讯搞了N个版本出来,是技术问题还收费原因不得而知.公众号支付,H5(wap)支付,APP支付.看得小编一头雾水. 带点N个疑问? 1.公众号支付是在公众号里支付,支众号里引入的三方 ...

  2. kindeditor 4 指定生成文件的时间日期/动态获取My97的时间

    最近后台要求要指定上传附件的时间日期,编辑器是kindeditor,仔细研究后发现可以借助clickToolbar事件,传递时间到后台,但是中途发现传递的时间总是初始化my97的时间,改变后的时间只有 ...

  3. 经典卷积神经网络的学习(一)—— AlexNet

    AlexNet 为卷积神经网络和深度学习正名,以绝对优势拿下 ILSVRC 2012 年冠军,引起了学术界的极大关注,掀起了深度学习研究的热潮. AlexNet 在 ILSVRC 数据集上达到 16. ...

  4. 华为云软件开发云:容器DevOps,原来如此简单!

    当开发团队把代码提交到 Git 应用仓库的那一刻,他们心里在想什么? 祈祷没有bug?渴望回家补觉?产品经理Go Die? 对,也不对.因为这只是最终发布万里长征的一小步,接下来要面对测试环境.生产环 ...

  5. WCF客户端C#代码 配置config文件

    不多说了,直接上代码吧.... 服务端Web.config文件中bindings配置 <bindings> <wsHttpBinding> <binding name=& ...

  6. Delphi2010,DelphiXE 安装控件找不到DesignIntf 解决办法

    今天安装了一个可以支持IP 地址输入的edit控件,安装后可以放到窗体上,但是编译提示找不到DesignIntf,DesignEditors 从Delphi6开始,就对DesignIntf,Desig ...

  7. caffe 源码阅读

    bvlc:Berkeley Vision and Learning Center. 1. 目录结构 models(四个文件夹均有四个文件构成,deploy.prototxt, readme.md, s ...

  8. wpf mvvm模式下CommandParameter传递多参

    原文:wpf mvvm模式下CommandParameter传递多参 CommandParameter一般只允许设置一次,所以如果要传递多参数,就要稍微处理一下.我暂时还没找到更好的方案,下面介绍的这 ...

  9. Kafka Offset 1

    Kafka Offset Storage   1.概述 目前,Kafka 官网最新版[0.10.1.1],已默认将消费的 offset 迁入到了 Kafka 一个名为 __consumer_offse ...

  10. win10 开机启动vmware并自动启动虚机

    思路 先实现程序或者命令启动VM并启动虚机,然后再开机启动这个程序. 1.实现一键启动VM和虚机 找了一圈的资料,有两个方法,都测试了,最终比较有效的是下面这个命令 "C:\Program ...