qt QString 與 int,char的轉換


每次QString轉換int或者char的時候都要查資料,記錄一下,方便下次查看。

參考:

  http://blog.csdn.net/ei__nino/article/details/7297791

  http://www.cnblogs.com/Romi/archive/2012/03/12/2392478.html

QString 轉 char

Qstring  str;

char*  ch;

QByteArray ba = str.toLatin1();    

ch=ba.data();

16進制的QSting轉成int

遇到例如'0xFF','0XFF'的QString

QString addr_s = ui->lineEdit_addr->text();
unsigned char addr ;
bool ok;
//判斷是否是'0x'或者'0X'開頭
if (addr_s.startsWith("0x") || addr_s.startsWith("0X"))
{
    QString addr_t = addr_s.mid(2);                 //QString截取,從索引值為2的位置開始
    addr = (unsigned char)addr_s.toInt(&ok, 16);    //轉成16進制
}
else
{
    // 10進制直接轉化
    addr = addr_s.toInt();
}

int轉QString

long a = 63;  
QString s = QString::number(a, 10);             // s == "63" , 轉成10進制 
QString t = QString::number(a, 16).toUpper();     // t == "3F" , 轉16進制 

Tony Liu

2016-9-24, Shenzhen


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM