Qt编码转换

一、String转GBK编码

/* String转GBK编码 */
QByteArray Widget::StringToGBK(const QString& qstr)
{
    /* 设置要转换成的编码格式 */
    QTextCodec* pCodec = QTextCodec::codecForName("gb2312");
    QByteArray array = pCodec->fromUnicode(qstr);
    return array;
}

二、GBK编码转String 

/* GBK转String */
QString Widget::GBKToQString(char* ch)
{
    QTextCodec* pCodec = QTextCodec::codecForName("gb2312");
    QString qstr = pCodec->toUnicode(ch);
    return qstr;
}

三、String转Unicode编码

/* String转Unicode */
void Widget::StringToUnicode(QString str, QChar *w_ch)
{
    const QChar *p = str.unicode();
    for(int i = 0; p[i] != '\0'; i++)
    {
        w_ch[i] = p[i];
    }
}

四、Unicode编码转String

/* Unicode转String */
QString Widget::UnicodeToString(QChar *w_ch)
{
    return QString(w_ch);
}

 

你可能感兴趣的:(Qt编码转换)