码迷,mamicode.com
首页 > 其他好文 > 详细

Qt char * 转QString

时间:2017-03-22 21:03:50      阅读:247      评论:0      收藏:0      [点我收藏+]

标签:rom   函数   qt4   text   string转换   法则   char   不能   中文乱码   

1.QString转char *

先将QString转换为QByteArray,再将QByteArray转换为char *。

注意:不能用char *mm = str.toLatin1().data();。

因为str.toLatin1()得到的QByteArray类型结果不能保存,最后转换mm的值就为空。

 

2. char * 转QString

使用QString的构造函数进行转换:QString(const QLatin1String &str);

QLatin1String的构造函数:QLatin1String(const char *str);

但是此方法或出现中文乱码。

采用以下两种方法则不会。



Qt5:char *ch = "中文的char*如何转换成QString?";
QString str(ch);

Qt4 :char *ch = "我是中文";
QString str = QString::fromUtf8(ch));

Qt char * 转QString

标签:rom   函数   qt4   text   string转换   法则   char   不能   中文乱码   

原文地址:http://www.cnblogs.com/tid-think/p/6601860.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!