qt GBK和UTF8编码转换

QString MyWidget::GetCorrectUnicode(const QByteArray &ba)
{
    QTextCodec::ConverterState state;
    QTextCodec *codec = QTextCodec::codecForName("UTF-8");
    QString text = codec->toUnicode( ba.constData(), ba.size(), &state);
    if (state.invalidChars > 0)
    {
        text = QTextCodec::codecForName( "GBK" )->toUnicode(ba);
    }
    else
    {
        text = ba;
    }
    return text;
}

posted on 2021-05-19 11:34  lodger47  阅读(753)  评论(1)    收藏  举报

导航