QT-中文乱码
本文最后更新于:1 年前
IDE的文件编码
QT
- 默认UTF-8
- 字符集转换函数(将多字节字符集转换成UTF-8) QStringLiteral
VS
默认GBK
可在 高级保存 -> 编码 中改变格式,或者使用插件ForceUTF8
可使用宏指定 #pragma execution_character_set(“UTF-8”)
命令行输入/utf-8 ,要求使用utf-8编译
外部数据的编码转换
设置本地默认处理编码方式(一般不用改变,只用后边两个转换函数)
包含头文件 #include
设置本地编码方式为UTF-8
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
QString str2 = QString::fromLocal8Bit(str1.toUtf8());
QString::toLocal8Bit()
windows API 中使用的是宽字符型wchar,需要先转换 str2.toStdWString().c_str()