Qt int, float, double convert to Qstring
There are two ways
2. Role
Qstring::number ();
Such as:
Long A = 63;
QString s = Qstring::number (A, 10); s = = "63"
QString t = Qstring::number (A, +). ToUpper (); t = = "3F"
Long A = 63; QString s = Qstring::number (A, 10); s = = "QString" t = Qstring::number (A, +). ToUpper (); t = = "3F" (explanation, variable A is of type int or float,double. 10 and 16 for binary) ToUpper is uppercase
2. Use
Long A = 63;
QString s = QString ("%1"). Arg (a);
Long A = 63; QString s = QString ("%1"). Arg (a); Well, I don't use it.
Convert qstring to double type
Method 1.
QString str= "123.45";
Double val=str.todouble (); val=123.45
QString str= "123.45"; Double val=str.todouble (); val=123.45
Method 2: Very suitable for scientific counting method form Conversion
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.
Convert qstring to 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); The conversion is returned by the time 0.0,ok=false;
QString str= "R2D2"; BOOL Ok;float d=str.tofloat (&OK); The conversion is returned by the time 0.0,ok=false;
Convert the qstring shape into plastic
1. Converting to decimal shaping
Note: The cardinality defaults to 10. When the base is 10 o'clock, and the cardinality must be 2 to 36
Room If the cardinality is 0, if the string starts with 0x, it will be converted to 16, and if it starts with a 0, it is converted to octal, otherwise it will be converted to decimal.
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. Normal shaping into qstring shape
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 Conversion char* Problem!
Method One:
QString qstr ("Hello,word");
Constchar * p = qstr.tolocal8bit (). data ();
QString qstr ("Hello,word"); const char * p = qstr.tolocal8bit (). data ();
Method Two:
Constchar *p = qstr.tostdstring (). data ();
const char *p = qstr.tostdstring (). data ();
The conversion is constant.
Convert current time to qstring ...
Public Qdatetime qdate = Qdatetime.currentdatetime ();
datetime = qdate.tostring ("yyyy mm month DD Day Ddddhh:mm:ss");
If not qtime and Qdate classes such as: How to convert a char unsigned char class received via TCP/IP to a qstring class
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);
}
QT QString and int, char and so on "mutual" conversion, the key is Qstring.tolocal8bit (). data ();