Qt中 int ,float ,double转换为QString

有两种方法

1.使用

QString::number();

如:

long a = 63;

QString s = QString::number(a, 10); // s == "63"

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

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

2.使用

long a = 63;

QString s = QString("%1").arg(a);

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

把QString转换为 double类型

方法1.

QString str="123.45";

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

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.

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

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 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 str="FF"; bool ok;int dec=str.toInt(&ok,10); //dec=255 ; ok=rue int hex =str.toInt(&ok,16); //hex=255;ok=true;

3.常整形转换为Qstring形

long a =63;

QString str=QString::number(a,16); //str="3f";

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

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");

constchar * p = qstr.toLocal8Bit().data();

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

方法二:

constchar *p = qstr.toStdString().data();

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);
}

参考:http://blog.chinaunix.net/uid-26696487-id-3333982.html

Qt中 QString 和int, char等的“相互”转换,关键是QString.toLocal8Bit().data();的更多相关文章

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

    转载:http://blog.csdn.net/ei__nino/article/details/7297791 Qt中 int ,float ,double转换为QString 有两种方法 1.使用 ...

  2. Qt中 QString 和int,double等的转换

    Qt中 int ,float ,double转换为QString 有两种方法 1.使用 QString::number(); 如: long a = 63; QString s = QString:: ...

  3. QString, string, int, char* 之间相互转换

    这三种数据类型在实际运用中经常需要互相转换,那么这里小结下它们之间的转换方法: - Qstring & string Qt中封装的类十分强大,其成员函数数量之多比STD有过之而无不及,许多程序 ...

  4. qt QString 与 int,char的转换

    每次QString转换int或者char的时候都要查资料,记录一下,方便下次查看. 参考: http://blog.csdn.net/ei__nino/article/details/7297791 ...

  5. qt中使用opencv处理图片 QImage 和 IplImage 相互之间转换问题

    在用opencv处理图片显示在qt label上的时候遇到不是问题 1. qt上要用qimage形式才干显示 IplImage转成 Qimage 彩色图像转换 IplImage  *fram; QIm ...

  6. 4.关于QT中的QFile文件操作,QBuffer,Label上添加QPixmap,QByteArray和QString之间的区别,QTextStream和QDataStream的区别,QT内存映射(

     新建项目13IO 13IO.pro HEADERS += \ MyWidget.h SOURCES += \ MyWidget.cpp QT += gui widgets network CON ...

  7. 4.关于QT中的QFile文件操作,QBuffer,Label上加入QPixmap,QByteArray和QString之间的差别,QTextStream和QDataStream的差别,QT内存映射(

     新建项目13IO 13IO.pro HEADERS += \ MyWidget.h SOURCES += \ MyWidget.cpp QT += gui widgets network CON ...

  8. OpenCV中IplImage图像格式与BYTE图像数据的转换

    最近在将Karlsruhe Institute of Technology的Andreas Geiger发表在ACCV2010上的Efficent Large-Scale Stereo Matchin ...

  9. Qt中Qstring,char,int,QByteArray之间到转换(转)

    11.各种数据类型的相互转换char * 与 const char *的转换char *ch1="hello11";const char *ch2="hello22&qu ...

随机推荐

  1. jquery cycle pugin

    插件地址: http://jquery.malsup.com/cycle/ <div id="propaganda"><div id="pgdImg&q ...

  2. NSURLConnection获取数据

    - (void)loadDataFromUrl { NSURL* url = [NSURL URLWithString:@"http://m.weather.com.cn/data/1011 ...

  3. [Javascript] Array methods in depth - slice

    Array slice creates a shallow copy of an array. In this lesson we cover, in detail, exactly what a ' ...

  4. STL中的find_if函数

      上一篇文章也讲过,find()函数只能处理简单类型的内容,也就是缺省类型,如果你想用一个自定义类型的数据作为查找依据则会出错!这里将讲述另外一个函数find_if()的用法 这是find()的一个 ...

  5. 一个中高级PHP工程师所应该具备的能力

    很多面试,很多人员能力要求都有“PHP高级工程师的字眼”,如果您真心喜欢PHP,并且您刚起步,那么我简单说说一个PHP高级工程师所应该具备的,希望给初级或已经达到中级的PHP工程师一些帮助. 一.平静 ...

  6. 反编译 APKTool 逆向助手

    最佳实践--Android逆向助手 1.点击"反编译apk,完成后res下的所有资源就都可以正常使用了,相当于apktool的功能------目前已失效,但是直接用rar解压是可以的!2.点 ...

  7. 【转】Multithreaded Python Tutorial with the “Threadworms” Demo

    The code for this tutorial can be downloaded here: threadworms.py or from GitHub. This code works wi ...

  8. SQL从入门到基础 - 01 数据库开发及ADO.Net

    一.数据库概述 1. 用自定义文件格式保存数据的劣势:并发性差,查找数据的速度差. 2. DBMS(DataBase Management System数据库管理系统)和数据库.平时谈到“数据库”的含 ...

  9. ASP.NET 页面间数据传递的方法

    在做WEB开发时,很多地方会涉及到页面间的数据传递.这几天在完善教务基础系统,遇到了这个问题,上网查了一些资料,现总结如下: 说到页面间数据传递,很多人都会想到通过像Session这样的全局变量,但是 ...

  10. MFC 堆栈溢出 test dword ptr [eax],eax ; probe page.

    今天调试程序的时候,发现一个奇怪的问题,之前调试都没问题的,今早加了一点东西,就出现错误,跳到调试位置,如下4行红色部分 ; Find next lower page and probe cs20: ...