QT系列—数据类型转换篇

QT数据类型转换篇

1、 int ,float ,double类型转换为QString

//int转换为QString 方法一
int temp = 123; 
QString str = QString::number(temp, 10); 

//int转换为QString 方法二
int temp = 123; 
QString str = QString("%1").arg(temp); 
//float转换为QString
float temp = 3.1;
QString str = QString("%1").arg(temp);
//double转换为QString
double temp = 3.14;
QString str = QString("%1").arg(temp);

2、QString转换为int,float,double类型

//QString转换为int类型
Qstring str="FF";  
bool ok;  
int dec = str.toInt(&ok,10); 
int hex = str.toInt(&ok,16);

//QString转换为float类型
QString str = "3.1"; 
bool ok; 
float val = str.toFloat(&ok);  

//QString转换为double类型
QString str = "1234.56";
bool ok;
double val = str.toDouble(&ok);

注:ok表示转换是否成功,成功则ok为true,失败则ok为false。

3、QString转换为QByteArray

// QString转QByteArray 方法一
QString str("hello");  
QByteArray bytes = str.toUtf8(); 

// QString转QByteArray 方法二
QString str("hello");  
QByteArray bytes = str.toLatin1();  

4、QByteArray转换为QString

 // QByteArray转QString 方法一
 QByteArray bytes("hello world");
 QString str = QString(bytes);   

// QByteArray转QString 方法二
 QByteArray bytes("hello world");
 QString str;
 str.prepend(bytes);

5、QByteArray转换为char *

QByteArray byte;
char* str = byte.data();

6、char *转换为QByteArray

char* str = "abc";
QByteArray byte(str);

7、QString转换为char *

//QString -> c++ string -> char *
QString str = "abc";
str.toStdString().data();

8、char *转换为QString

char *str = "abc";
QString string(str);

9、QDateTime转换为QString

QString str;  
QDateTime time;   
time = QDateTime::currentDateTime();   
str = time.toString("yyyy-MM-dd hh:mm:ss"); 

10、QString转换为QDateTime

QString str;  
QDateTime time;   
str = "2020-07-02 17:35:00";  
time = QDateTime::fromString(str, "yyyy-MM-dd hh:mm:ss"); 
  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CPUOS2010

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值