在编写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"