在Qt5使用中文(vs环境)

Posted _st

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Qt5使用中文(vs环境)相关的知识,希望对你有一定的参考价值。

如果是使用mingw版本的Qt create, 也就是使用GCC编译器应该没那么多事吧。

 

不过我还是用惯了VS呢。

好了,废话不多说,开始总结vs下乱码的解决方案。

 

vs2003 把源码存成 utf-8格式编码就可以直接中文了。

 

vs2005/08/10/13 

1  QString s1 = QStringLiteral("我是中文");
2  QString s2 = QString::fromLocal8Bit("我是中文");

 

char *UnicodeToUTF8(const wchar_t *str)
{
static char result[1024];
int len = WideCharToMultiByte(CP_UTF8, 0, str, -1, NULL, 0, NULL, NULL);
WideCharToMultiByte(CP_UTF8, 0, str, -1, result, len, NULL, NULL);
result[len] = \0;
return result;
}
QString s1 = UnicodeToUTF8(L"我是中文");

QString s2 = QString::fromWCharArray(L"我是中文");

 

vs2010以上

#if _MSC_VER >= 1600
#pragma execution_character_set("utf-8")
#endif

QString s = "我是中文";

 



以上是关于在Qt5使用中文(vs环境)的主要内容,如果未能解决你的问题,请参考以下文章

QT5.8.0与VS2013环境配置

VS2013 平台下搭建 QT5.3 开发环境

Qt5.7+VS2015环境下使用QtCreator编译QtAV视频库

使用VS2013+QT5.7.0开发简单计算器

Qt5 + msvc2015编译器 环境配置 (不安装VS)

vs2012+qt5.2.0环境搭建