qt 使用msvc编译器出现乱码如何解决?字符串中存在空格?

开发环境:
1.win7 64位
2.qt版本 windows-x86-msvc2015-5.9.0

如何解决?
1.设置qt文件编码
设置 默认UTF-8 如果编码是 UTF-8 则添加.
2.使用 QTextCodec 即可

QTextCodec* codec = QTextCodec::codecForName("GBK");
qDebug()<<codec->toUnicode("學海無涯");
ui->pushButton->setText(tr(codec->toUnicode("學海無涯").toUtf8().data()));


查看当前本地编码,设置本地编码后,再次查看本地编码
qDebug() << "[debug] " << QTextCodec::codecForLocale()->name();
QTextCodec::setCodecForLocale(QTextCodec::codecForName("gbk"));
qDebug() << "[debug] " << QTextCodec::codecForLocale()->name();
posted @ 2017-09-04 22:58  學海無涯  阅读(494)  评论(0编辑  收藏  举报