Qt中QString 和 int char char*等相互转换

在编写Qt程序过程中经常遇到各种数据类型的转换,故此写下来方便自己和大家的查找。叮!!!

1. QString to char*

QString qstr = "hello";

char* c_char;

QByteArray qba = qstr.toLatin1();

c_char = qba.data();

使用c语言写的客户端,使用Qt写的服务器,还使用到了c 的fork()函数。

2. char* to QString

char* c_char = "world";

QString qstr = QString(QLatin1String(c_char));

3. int ,float ,double to QString

①正规

int num = 79;

float fnum = 79.99;

QString qnum = QString::number(num); //默认为十进制转换,其他进制转换需显示指定

QString qnum = QString::number(fnum);

QString qhex = QString::number(num,16).toUpper(); //十六进制大写 qhex = 4F

②奇淫巧技~ QString arg 的用法

int num = 79;

QString str = "hello world!";

QString qstr = QString("%1%2").arg(num).arg(str);

4. QString to float double int

QString qint = "100";

QString qfloat = "100.0";

int intNum = qint.toInt();

float floatNum = qfloat.toFloat();

5. QString与QDateTime之间的转换(这个是附赠的)

QString strtime;

QDateTime time;

time = QDateTime::currentDateTime(); //要包含头文件

strtime = time.toString("yyyy-MM-dd hh:mm:ss");

// strtime = "2019-05-16 19:54:17"

原文发布于微信公众号 - Pou光明(pou0230)

原文发表时间:2019-05-16

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券