中文乱码问题
使用qt qtCreator windows环境下,编译的时候,在代码中包含中文会出现如下错误
..\testSTL\mainwindow.cpp: warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
..\testSTL\mainwindow.cpp(42): error C2001: 常量中有换行符
..\testSTL\mainwindow.cpp(43): error C2146: 语法错误: 缺少“;”(在标识符“QString”的前面)
解决办法1:
1. 将文件以GBK或者gb2312保存,以gb2312加载
qtCreator 编辑->选择编码
2. 使用 fromLocal8Bit
QString str1= QString::fromLocal8Bit("男");
qDebug () << "str3-:"<<str1<<endl;
解决办法2:
1. 将文件用notepad++ 打开,然后修改编码格式为utf-8 BOM
2. manage kit -> 文本编辑器-> 行为 ->文件编码
3. pro 中添加如下语句
QMAKE_CXXFLAGS += -execution-charset:utf-8