一、String和QString
1、String转QString
string str;
str = "转换!";
QString Qstr;
Qstr = QString::fromLocal8Bit(str.c_str());
2、QString转string
QString Qstr = "123456";
string str;
str = Qstr.toStdString();
二、QString 和int
1、int、float、double转QString (以int为例)
int num= 6;
QString strnNum;
strnNum = QString::number(num);
2、QString转int
QString str("10");
int tmp = str.toInt();
三、QString 和float
1、QString 转float如QString转int 一样
2、float转String(不控制精度)
float score = 123.01354653;
stringstream strstring;
strstring << score;
string score1;
score1 = strstring.str();
3、float转String(控制精度)
float num = 12.16574681354;
char word[10];
sprintf(word, "%0.4f", num);//控制四位小数
string str2;
str2 = word;
四、QString 和char*
1、QString转char*,先将QString转换成string,再将string转换成char*
QString qstr;
string str = qstr.toStdString();
char* ch = str.c_str();
2、char*转QString
char* ch = "test";
QString qstr=QString(QLatin1String(ch));
本文是学习过程中遇到的转换问题,不想每次用,每次都查,所以这里进行了一个总结记录,参考的文献就没有一一列举了。