与QString 有关的转换 总结

                         与QString 有关的转换 总结  

一、QSting 转 C++ 基本类型   

(1)QSting --> int 

    toInt();

(2)QString--> double

    toDouble();

(3)QString-->float

toFloat();

(4)QString -->long

toLong();

(5)QString -->long long 

toLongLong();

(6)QString-->short

toShort();

-----------发现规律了~~ -------------

二、QString 转 C++ 字符串 

(1)QString-->string

toStdString() ;

(2)QString-->char*

toStdString().c_str() ;

(3)QString-->const char* //省略步骤可能乱码

QString   str;

       QByteArray   aByteArray  =  str.toLatin1();//先把转化为QByteArray的结果存储起来

     const char *s =  aByteArray.data()

三、C++ 基本类型转Qstring 

(1) int    double     long    .....  -->QString

      QString::number(long n, int base = 10)  

     静态函数  ,第一个参数有多种不同的重载 ,第二个参数代表 进制 ,默认10进制 

(2)string-->QString 

QString::fromStdString(const std::string & str) ;  //静态 

四、Qt 中使用中文 

QString::fromLocal8Bit(const char * str, int size = -1);  //静态


string str="你好";

QString::fromLocal8Bit(str.c_str());

QString::fromLocal8Bit("你好");

五、Qstring -->gbk 编码


成员函数 toLocal8Bit() //转为本地编码

Qstring 内部是utf-8 编码的 我们用的Windows中文版 内部是gbk编码的 所以调用以上函数 就可以转成gbk编码


例如:QString a="你好";

a.toLocal8Bit(); 就成了gbk编码


         如果有不对或者更加简单的方法 ,欢迎评论指出 。

    

你可能感兴趣的:(Qt)