一、保證長度
在進行int轉qstring的過程中,有時候需要保證轉換後的字符串長度一致,這時候我們可以使用QString的leftJustified()和rightJustified()方法,通過左對齊和右對齊來保證字符串長度。
int i = -123; QString str = QString::number(i).rightJustified(6, '0'); // str的值為"-00123"
上面的代碼中,我們將整數i轉換為字符串str,並通過rightJustified()方法來保證字符串長度為6,並且在左側用字符’0’填充。
除了rightJustified()方法,QString還提供了leftJustified()方法,它用法與rightJustified()類似,只是在右側用字符填充。
二、int轉qstring小端在前
在某些情況下,我們需要以小端模式來將整數轉換為字符串,比如在網絡數據傳輸中。這時候,我們可以使用QDataStream類來實現。
int i = 12345; QByteArray buffer; QDataStream out(&buffer, QIODevice::WriteOnly); out << i; QString str = QString::fromLatin1(buffer); // str的值為"\x39\x30\x01\x00"
上面的代碼中,我們將整數i用QDataStream的方式寫入byte數組中,然後將byte數組轉換為字符串。轉換後的字符串為16進制形式,其中小端模式下的i值為0x01 0x00 0x39 0x30。
三、int轉qstring qt
Qt提供了QString::number()方法,可以方便地將整數轉換為字符串。
int i = 123; QString str = QString::number(i); // str的值為"123"
上面的代碼中,我們使用QString::number()方法將整數i轉換為字符串,並將結果存儲到str中。
四、int轉string
C++標準庫中的std::to_string()方法可以將整數轉換為std::string類型的字符串。
#include int i = 12345; std::string str = std::to_string(i); // str的值為"12345"
上面的代碼中,我們使用std::to_string()方法將整數i轉換為std::string類型的字符串,並將結果存儲到str中。
五、int轉varchar
如果我們需要將整數轉換為SQL中的varchar類型,可以使用QString::setNum()方法。
int i = 123; QString str; str.setNum(i); // str的值為"123"
上面的代碼中,我們使用QString::setNum()方法將整數i轉換為字符串,並將結果存儲到str中。
六、int轉char
將整數轉換為char類型的字符串可以使用sprintf()函數。
#include int i = 123; char buffer[10]; sprintf(buffer, "%d", i); // buffer的值為"123"
上面的代碼中,我們使用sprintf()函數將整數i轉換為char類型的字符串,並將結果存儲到buffer中。
七、int轉byte
將整數轉換為byte類型(即uchar)的字符串可以使用Qt的QString::number()方法,並且指定基數為16。
int i = 255; QString str = QString::number(i, 16).rightJustified(2, '0'); // str的值為"FF"
上面的代碼中,我們使用QString::number()方法將整數i轉換為16進制的字符串,並保證字符串長度為2。
八、char轉string
將char類型的字符串轉換為QString可以使用QString::fromLatin1()方法。
char buffer[] = "Hello"; QString str = QString::fromLatin1(buffer); // str的值為"Hello"
上面的代碼中,我們使用QString::fromLatin1()方法將char類型的字符串轉換為QString類型,並將結果存儲到str中。
九、float轉qstring
將浮點數轉換為QString可以使用QString::number()方法,並且指定小數位數。
float f = 3.1415926; QString str = QString::number(f, 'f', 2); // str的值為"3.14"
上面的代碼中,我們使用QString::number()方法將浮點數f轉換為QString類型,並保留2位小數。結果存儲到str中。
十、int轉char數組
將整數轉換為char數組可以使用sprintf()函數。
#include int i = 123; char buffer[10]; sprintf(buffer, "%d", i); // buffer的值為"123"
上面的代碼中,我們使用sprintf()函數將整數i轉換為char類型的字符串,並將結果存儲到buffer中。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/194844.html