Qt532_字符编码转换
Posted CppSkill
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt532_字符编码转换相关的知识,希望对你有一定的参考价值。
1、测试代码:
// http://blog.csdn.net/changsheng230/article/details/6588447 QString str = QString::fromLocal8Bit("我是中国人"); QString str2 = QString("本地文本"); // 乱码 qDebug() << str; qDebug() << str2; // Method 2 QTextCodec *codec = QTextCodec::codecForName("GBK"); // get the codec for KOI8-R //QString locallyEncoded = codec->toUnicode( "显示中文" ); QString locallyEncoded = codec->toUnicode( "我是中国人" ); qDebug() << locallyEncoded << endl; codec = QTextCodec::codecForName("gbk"); // get the codec for KOI8-R locallyEncoded = codec->toUnicode( "我是中国人" ); qDebug() << locallyEncoded << endl; wchar_t *pwc = L"我是中国人"; for (size_t i=0; i<wcslen(pwc); i++) { ushort us = pwc[i]; qDebug() << "\t" << QString::number(us, 16).leftJustified(2, ‘0‘); } qDebug() << ""; QChar *pcs = (QChar*)str.unicode(); for (int i=0; i<str.length(); i++) { QChar c = pcs[i]; ushort us = c.unicode(); qDebug() << "\t" << QString::number(us, 16).leftJustified(2, ‘0‘); } qDebug() << ""; //QChar *pcs = locallyEncoded.data(); pcs = (QChar*)locallyEncoded.unicode(); for (int i=0; i<locallyEncoded.length(); i++) { QChar c = pcs[i]; ushort us = c.unicode(); qDebug() << "\t" << QString::number(us, 16).leftJustified(2, ‘0‘); }
2、
以上是关于Qt532_字符编码转换的主要内容,如果未能解决你的问题,请参考以下文章