QString 与 char* 、std:string之间的转换

来源:互联网 发布:数据谷八中怎么样 编辑:程序博客网 时间:2024/05/16 08:15

1.QString 转换为 char*

int main(int argc, char **argv)
{
 QApplication app(argc, argv);
 QString str1 = "Test";
 QByteArray ba = str1.toLatin1();
 const char *c_str2 = ba.data();
 printf("str2: %s", c_str2);
 return app.exec();   
}

2.char* 转换为 QString

QString string = QString(QLatin1String(c_str2)) ;


QT中三种数据类型之间的转换:

 

QString qtStr; 
std::string stdStr;

char* chStr;
则有:

(1)

qtStr = stdStr.c_str();

qtStr = QString(chStr);

(2)
stdStr = qtStr.local8Bit(); 或者stdStr=qtStr.toStdString;

(3)

chStr=stdStr.c_str(); 
chStr=(const char*)qtStr.local8Bit();

chStr=(char*)stdStr;

(4)

int 转 QString
int a=10;
QString b;
b=QString::number(a)


原创粉丝点击