QString与int、double、float、char*相互转换

1.QString to int

 QString str="FF";

int  strTO16=str.toInt(16);//转换为16进制

int  strTO10=str.toInt(10);//转换为10进制,10可以省略,默认为10进制

2.int to QString 

int a=100;

QString str=QString::number(a);

3.QString to double

QString str="12.45"

double a=str.toDouble();

4.double to QString

double a =12.35;

QString str=QString::number(a,'f',1);//f 表示非科学计数法,1表示小数点后保留一位

5.QString to float

 QString data;            
 float num = data.toFloat();

6.float to QString

 float num = 1.222;

 QString data = QString("%1").arg(num);

7.QString to char*

QString a;

QByteArray b=a.toLatin1();

char *c=b.data();

8.char* to QString 

char *a;

QString b;

QTextCodec *codec=QTextCodec::codecForName("GBK");

a=codec->fromUnicode(b).data();

b=codec->toUnicode(a);

原文地址:https://www.cnblogs.com/zxl971213/p/13638621.html