溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Qt各種字符轉換怎么實現

發(fā)布時間:2022-05-19 13:51:41 來源:億速云 閱讀:186 作者:iii 欄目:開發(fā)技術

這篇文章主要介紹“Qt各種字符轉換怎么實現”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“Qt各種字符轉換怎么實現”文章能幫助大家解決問題。

    轉換

    Qt int轉QString

    int i = 5;
    QString s = QString::number(i);

    Qt基礎-QString字母大小寫轉換

    QString str = "hello";
    str = str.toUpper();        //轉換為大寫HELLO
    str = str.toLower();        //轉換為小寫hello

    QByteArray與char*的轉換

    2.1 QByteArray 轉 char*
    
    方式1 傳統(tǒng)方式data()和size()函數 (方便)
    QByteArray array(10, 'Q');//初始化
     
    // 轉化
    char *buf;//只是一個指針
    int len;//buf的長度
    buf = array.data();
    len = array.size();
     
    方式2 memcpy()方式 (靈活)
    
    QByteArray array(9,'Q');
    char buf[10];//數組
    int len_array = array.size();
    int len_buf = sizeof(buf);
    int len = qMin( len_array, len_buf );
     
    // 轉化
    memcpy( buf, array,  len );
    2.QByteArray與int 以及int[] 的轉換
    
    2.1. int 與 QByteArray 互轉
    [1] int 轉 QByteArray
    // int 轉 QByteArray
    int  intVar = 199;
     
    QByteArray array;
    int len_intVar = sizeof(intVar);
    array.resize(len_intVar);
    memcpy(array.data(), &intVar, len_intVar);
     
    [2]QByteArray 轉 int
    // QByteArray 轉 int
    // array 數據接上面
    int  outIntVar;
    memcpy(&outIntVar, array.data(), len_intVar);
    //memcpy(&outIntVar, array, len_intVar);//此行代碼與上句通用
    2.2. int[] 與 QByteArray 互轉
    [1] int[] 轉 QByteArray
    // int[] 轉 QByteArray
    // int[] 轉 QByteArray
    int  intVar[4] = {1,2,9,0};//初始化變量賦值
     
    QByteArray array;
    int len_intVar = sizeof(intVar);
    array.resize(len_intVar);
    //轉換 int[] -> QByteArray
    memcpy(array.data(), &intVar, len_intVar);
     
    [2]QByteArray 轉 int[]
    // QByteArray 轉 int[]
    // array 數據接上面
    int  outIntVar[4];
    memcpy(&outIntVar, array.data(), len_intVar);
    //memcpy(&outIntVar, array, len_intVar);//此行代碼與上句通用
    3.QByteArray與float 以及float[] 的轉換
    其實完全可以參考第3節(jié),int的用法.
     
    3.1. float[] 與 QByteArray 互轉
    [1] float[] 轉 QByteArray
    // float[] 轉 QByteArray
    float  fVar[4] = { 1.1, 2.3, 9.5, 0.2 };//初始化變量賦值
     
    QByteArray array;
    int len_fVar = sizeof(fVar); // 4*4 = 16 (一個float占4個字節(jié))
    array.resize(len_intVar);
    memcpy(array.data(), &fVar, len_fVar);
     
     
    [2]QByteArray 轉 float[]
    //  QByteArray 轉 float[]
    float  outFvar[4];
    memcpy(&outIntVar, array.data(), len_fVar);
    //memcpy(&outFvar, array, len_fVar);//此行代碼與上句通用
    
    3.2. float 與 QByteArray 互轉
    可以安全參考int。

    關于“Qt各種字符轉換怎么實現”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識,可以關注億速云行業(yè)資訊頻道,小編每天都會為大家更新不同的知識點。

    向AI問一下細節(jié)

    免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    qt
    AI