首先说我的解决办法
Tools->Extensions and Updates…
安装ForceUTF8(with BOM) 注意Force这个插件有好几个版本,一定要withBOM!!!我之前安装的没有BOM导致改了各种设置还是一直编译不过,差点没气死我
另外代码里修改添加的(感觉加不加都一样,如果文件编码格式有问题怎么加都只是治标不治本,但是这里还是汇总一下):
#pragma execution-character_set("UTF-8") //加在文件的最开头 不加也没事
QStringLiteral("资源管理器"); // 每个需要输入中文的地方都要添加很麻烦 但是不加确实会乱码
system("chcp 65001"); // 在主函数main第一句添加 不加也没事
另外VS2017配置File->Advanced Save Options…
改为UTF-8 with bom模式当然要是安装了插件这个改不改都一样,编译的时候插件会更改文件格式,建议还是安装插件吧,这个有时候可能不太好使,这个编码真的很乱。
PS:如果找不到Advanced Save Options…在Tools->Customize…可以将该选项添加进File里
在Commands->File->Add Command…->File->Advanced Save Options…