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

Qt 专栏收录该内容
10 篇文章 0 订阅

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


目录(?)[+]

网上找了半天,全是QString转int和char等的,就没有int转QString的,但是还是找到啦,我来整合一下哦~


Qt中 int ,float ,double转换为QString

有两种方法

1.使用

QString::number();

如:

  1. long a = 63;  
  2. QString s = QString::number(a, 10);             // s == "63"  
  3. QString t = QString::number(a, 16).toUpper();     // t == "3F"  
(解释,变量a为int型或者float,double。10和16为进制) toUpper是大写

2.使用

  1. long a = 63;  
  2. QString s = QString("%1").arg(a);  
这个嘛,我不常用


把QString转换为 double类型

方法1.

  1. QString str="123.45";  
  2. double val=str.toDouble(); //val=123.45  


方法2.很适合科学计数法形式转换

  1. bool ok;  
  2. double d;  
  3. d=QString("1234.56e-02").toDouble(&ok); //ok=true;d;12.3456.  


 

把QString转换为float形

1.

  1. QString str="123.45";  
  2. float d=str.toFloat(); //d=123.45  

2.

  1. QString str="R2D2";  
  2. bool ok;  
  3. float d=str.toFloat(&ok); //转换是被时返回0.0,ok=false;  

把QString形转换为整形

1.转换为十进制整形

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

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

  1. Qstring str="FF";  
  2. bool ok;  
  3. int dec=str.toInt(&ok,10); //dec=255 ; ok=rue  
  4. int hex =str.toInt(&ok,16); //hex=255;ok=true;  


3.常整形转换为Qstring形

  1. long a =63;  
  2. QString str=QString::number(a,16); //str="3f";  
  3. QString str=QString::number(a,16).toUpper(); //str="3F";  


Qstring 转换char*问题!

方法一:

  1. QString qstr("hello,word");  
  2. const char * p = qstr.toLocal8Bit().data();  


方法二:
  1. const char *p = qstr.toStdString().data();  


转换过来的是常量

把当前时间转化为QString...

public QDateTime qdate = QDateTime.currentDateTime();
datetime = qdate.toString("yyyy年MM月dd日ddddhh:mm:ss");
如果不是QTime和QDate类比如说:通过TCP/IP接收到的char unsigned char 类等如何转换为QString类
QString Time2String( 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
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
<p> <span style="font-size:14px;color:#337FE5;">【为什么学爬虫?】</span> </p> <p> <span style="font-size:14px;">       1、爬虫入手容易但是深入较难如何写出高效率爬虫如何写出灵活性高可扩展爬虫都是一项技术活。另外在爬虫过程经常容易遇到被反爬虫比如字体反爬、IP识别、验证码如何层层攻克难点拿到想要数据这门课程你都能学到!</span> </p> <p> <span style="font-size:14px;">       2、如果是作为一个其他行业开发者比如app开发web开发学习爬虫能让你加强对技术认知能够开发出更加安全软件网站</span> </p> <p> <br /> </p> <span style="font-size:14px;color:#337FE5;">【课程设计】</span> <p class="ql-long-10663260"> <span> </span> </p> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> 一个完整爬虫程序无论大小总体来说可以分成三个步骤分别是: </p> <ol> <li class="" style="font-size:11pt;color:#494949;"> 网络请求:模拟浏览器行为从网上抓取数据。 </li> <li class="" style="font-size:11pt;color:#494949;"> 数据解析:将请求下来数据进行过滤提取我们想要数据。 </li> <li class="" style="font-size:11pt;color:#494949;"> 数据存储:将提取到数据存储到硬盘或者内存。比如用mysql数据库或者redis。 </li> </ol> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> 那么本课程也是按照这几个步骤循序渐进进行讲解带领学生完整掌握每个步骤技术。另外因为爬虫多样性在爬取过程可能会发生被反爬、效率低下。因此我们又增加了两个章节用来提高爬虫程序灵活性分别是: </p> <ol> <li class="" style="font-size:11pt;color:#494949;"> 爬虫进阶:包括IP代理多线程爬虫图形验证码识别、JS加密解密、动态网页爬虫、字体反爬识别。 </li> <li class="" style="font-size:11pt;color:#494949;"> Scrapy分布式爬虫:Scrapy框架、Scrapy-redis组件、分布式爬虫。 </li> </ol> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> 通过爬虫进阶知识点我们能应付大量反爬网站而Scrapy框架作为一个专业爬虫框架使用他可以快速提高我们编写爬虫程序效率速度。另外如果一台机器不能满足你需求我们可以用分布式爬虫让多台机器帮助你快速爬取数据。 </p> <p style="font-size:11pt;color:#494949;">   </p> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> 从基础爬虫到商业化应用爬虫本套课程满足您所有需求! </p> <p class="ql-long-26664262" style="font-size:11pt;color:#494949;"> <br /> </p> <p> <br /> </p> <p> <span style="font-size:14px;background-color:#FFFFFF;color:#337FE5;">【课程服务】</span> </p> <p> <span style="font-size:14px;">专属付费社群+定期答疑</span> </p> <p> <br /> </p> <p class="ql-long-24357476"> <span style="font-size:16px;"><br /> </span> </p> <p> <br /> </p> <p class="ql-long-24357476"> <span style="font-size:16px;"></span> </p>
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值