zoukankan      html  css  js  c++  java
  • QString转换为char*

      QString在Qt里相当于C++里的std::string,或者是C里的c style string。不过,QString跟编码相关,在低层想把一个QString发送出去相当麻烦,尤其对方用的不是Qt的时候,必须先转化为char数组。

      QString转换为char数组,基本就是先将QString转换为QByteArray,再从QByteArray取得char *指针,就可以得到char类型的数据了。需要注意的是QString的编码。

      假如为UTF8编码,则QString str("中国人")的size()为3。转换为char*的方法是:

    str.toUtf8().data()

    此时char*的长度是不等于str.size()函数返回的长度的。如果你的编码为Latin-1,则是

    str.toLatin1().data()

      编码的确定根据自己的设定,如果调用了QTextCodec::setCodecForLocale(QTextCodec * c),则以自己设置的参数为准。如果在代码里不曾设定字符编码,则跟代码文件编码有关。Qt creator的文件编码在linux下通常是UTF8,在windows下通常是GBK。

  • 相关阅读:
    SpringBoot 拦截器
    SpringBoot学习笔记1
    mysql学习1
    mybatis运行原理学习
    js学习2
    设计原则
    mybatis学习1
    spring mvc
    Jenkins流水线部署maven不同模块服务到不同服务器运行
    L2Dwidget让自己的vue项目骚起来
  • 原文地址:https://www.cnblogs.com/coding-my-life/p/4020897.html
Copyright © 2011-2022 走看看