关闭

Qt中QString与数字类型的转换方法

标签: QtQString数字类型转换方法
1865人阅读 评论(0) 收藏 举报
分类:
把QString转换为 double类型

方法1.不安全的转换方式

QString str="123.45";

double val=str.toDouble(); //val=123.45


方法2.很适合科学计数法形式转换
bool ok;
double d;

d=QString("1234.56e-02").toDouble(&ok); //ok=true;d;12.3456.


把QString转换为float形

方法1.

QString str="123.45";

float d=str.toFloat(); //d=123.45

方法2.

QString str="R2D2";

bool ok;

float d=str.toFloat(&ok); //转换是被时返回0.0,ok=false;


把QString形转换为整形
1.转换为十进制整形

注意:基数默认为10。当基数为10时,并且基数必须在2到36之间。

如果基数为0,若字符串是以0x开头的就会转换为16进制,若以0开头就转换为八进制,否则就转换为十进制。

Qstring str="FF";
bool ok;
int dec=str.toInt(&ok,10); //dec=255 ; ok=rue

int hex =str.toInt(&ok,16); //hex=255;ok=true;


长整形转换为Qstring形
long a =63;
QString str=QString::number(a,16); //str="3f";

QString str=QString::number(a,16).toUpper(); //str="3F";


Qstring 转换char*问题
方法一:
QString qstr("hello,word");
const char * p = qstr.toLocal8Bit().data();
方法二:
const char *p = qstr.toStdString().data();  转换过来的是常量


把当前时间转化为QString
public QDateTime qdate = QDateTime.currentDateTime();

datetime = qdate.toString("yyyy年MM月dd日ddddhh:mm:ss");

toString()函数中的格式控制:

日期:QDate


时间:QTime



如果不是QTime和QDate类比如说:通过TCP/IP接收到的char unsigned char 类等如何转换为QString类

QString TimeString( DWORD dwTime)
{
    char cTime[50] = {0};
    memset(cTime,0,50);
    strftime(cTime,32,"%Y-%m-%d %H:%M:%S",localtime(&time_t(dwTime)));
    return QString(cTime);
}

0
0
查看评论

QT字符串中取数字

QString str = "7FW09"; QString tmp,text; for(int j = 0; j str.length(); j++) { if(str[j] >= '0' && str[j...
  • a429080578
  • a429080578
  • 2017-09-11 09:36
  • 525

QString中数字的使用

参考资料 [1]QString中提取数字问题 [2]Qt中从QString中提取出数字 [3]QString含有多个数值,提取出来放置数组中   [4]qt正则表达式类QRegExp [5]QT QString 很全的使用
  • Q1302182594
  • Q1302182594
  • 2015-05-28 10:54
  • 2539

Qt判断QString中的字符串是否为纯数字

/*** *判断一个字符串是否为纯数字 */ int Common::isDigitStr(QString src) { QByteArray ba = src.toLatin1();//QString 转换为 char* const char *s = ba.data()...
  • caimo
  • caimo
  • 2012-09-15 17:44
  • 15379

Qt数字与字符串之间的相互转换

QString  str = QString::number(1000.01); 或者 int i=100; QString s = QString::number(i);
  • XIAO_PING_PING
  • XIAO_PING_PING
  • 2014-09-21 16:32
  • 10482

QT 整型数据转换为字符串类型

QT中int类型转为字符串
  • qq_14994573
  • qq_14994573
  • 2015-12-08 10:55
  • 6103

【Qt开发】QString与数字类型的转换(不同进制)

把QString转换为 double类型 方法1.QString str="123.45"; double val=str.toDouble(); //val=123.45 方法2.很适合科学计数法形式转换 bool ok; double d; ...
  • LG1259156776
  • LG1259156776
  • 2016-09-17 23:14
  • 3555

Qt中 QString 和int, char等的“相互”转换

网上找了半天,全是QString转int和char等的,就没有int转QString的,但是还是找到啦,我来整合一下哦~ Qt中 int ,float ,double转换为QString 有两种方法 1.使用 QString::number(); 如: ...
  • EI__Nino
  • EI__Nino
  • 2012-02-27 12:52
  • 137562

Qt中QString与基本类型的转换问题

最近在编程时,遇到了一个问题,大致是一堆float类型的数据,需要转换为QDateTime类型,于是经过查阅文档,发现Qt中的一些基本的数据类型比如int, float, double 转换成QString类型是比较方便的,Qt的API会封装相关的方法,如果反向转换的话,需要自己手动编程。
  • tgzjz
  • tgzjz
  • 2015-04-16 13:44
  • 1919

Qt 各种数据类型转换

1、QString --> string QString.toStdString(); 2、string --> QString QString::fromStdString(string) 3、QString --->int,double,char *
  • liuysheng
  • liuysheng
  • 2011-09-27 10:58
  • 2241

QT中数据类型转换总结

最近写Qt中的tcp网络编程,Socke连接后,接受到的数据类型是字节型,这就涉及到了大量的类型转换,在网上辗转几辄,总算有了点结果,特此跟大家分享。好了,不废话,下面细说。   1.打开Qt Creator,我的是2.8.1版本。新建工程,应该包含了基本类型的头文件,这里就不详细说了...
  • q751197694
  • q751197694
  • 2016-05-28 10:31
  • 2553
    我的简介:
    专注:C++、Qt软件开发
    Qt、C++编程交流群:
    302558294


    可以扫描下面微信,打赏我哦
    个人资料
    • 访问:782351次
    • 积分:10331
    • 等级:
    • 排名:第1960名
    • 原创:242篇
    • 转载:53篇
    • 译文:0篇
    • 评论:308条
    博客专栏
    最新评论