型別轉換
把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;
3.常整形轉換為qstring形
long a =63;
qstring str=qstring::number(a,16); //str="3f";
qstring str=qstring::number(a,16).toupper(); //str="3f";
方法一:
qstring qstr("hello,word");
const char * p = qstr.tolocal8bit().data();
方法二:
const char *p = qstr.tostdstring().data();
轉換過來的是常量
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)
;memset(ctime,0,50);
strftime(ctime,32,"%y-%m-%d %h:%m:%s",localtime(&time_t(dwtime)));
return qstring(ctime);
}
QT中QString與數字型別的轉換
把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 ...
QT中QString與數字型別的轉換
把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 ...
QString 型別轉換
因為經常用到型別轉換,看到一篇很全的文章,就記下來,方便以後使用。1.qstring 轉 intqstring str int m m str.toint 2.int 轉 qstring qstring str int m str qstring number m 3.unsigned char 轉...