文本后缀“”无效;未找到文文本运算符或文本运算符模板““

编译平台 VS2017
***提示错误:***文本后缀“”无效;未找到文文本运算符或文本运算符模板““

昨天晚上加班,着急回家,所以敲的特别快,一顿操作猛如虎,一运行,一堆错误,瞬间有点懵逼,结果一看全都是添加文字问题,上错误源码:

std::map<QString,QString> WinFontNameToFamilys;
	WinFontNameToFamilys.insert(std::make_pair(QString::fromUtf8("宋体"), QString::fromUtf8("宋体")));
	WinFontNameToFamilys.insert(std::make_pair(QString::fromUtf8("楷体"), QString::fromUtf8("楷体")));
	WinFontNameToFamilys.insert(std::make_pair(QString::fromUtf8("黑体"), QString::fromUtf8("黑体")));
	WinFontNameToFamilys.insert(std::make_pair(QString::fromUtf8("仿宋"), QString::fromUtf8("仿宋")));
	WinFontNameToFamilys.insert(std::make_pair(QString::fromUtf8("微软雅黑 常规"), QString::fromUtf8("微软雅黑")));
	WinFontNameToFamilys.insert(std::make_pair(QString::fromUtf8("微软雅黑 细体"), QString::fromUtf8("微软雅黑 Light")));
	WinFontNameToFamilys.insert(std::make_pair(QString::fromUtf8("等线 常规"), QString::fromUtf8("等线")));
	WinFontNameToFamilys.insert(std::make_pair(QString::fromUtf8("等线 细替"), QString::fromUtf8("等线 Light")));

就是这段代码,经查证,我坚决认为我map的使用方式是正确的,那么究竟是哪错了,比较奇怪的就是,这些添加的不是所有的都错,只有一部分会错,懵,当然,最后完美解决,
**原因:**创建的.cpp文件格式不是utf-8格式,导致无法识别部分中文,所以导致一部分出错
我也想到了这个原因,用win10自带的文本查看器修改了保存格式,但是依然不行,最后这样解决的

解决方法
1.在Visual Studio菜单栏上点击“文件”->“高级保存选项”,在“编码”下拉框选择“简体中文(GB2312)”,然后“确定”即可。
这个方法也是在百度上我找到的唯一的方法,但是我照此修改了之后,并不行,后面我修改成了另外一个格式 “Unicode(UTF-8无签名)” 制式后完美解决,如果修改成 “简体中文(GB2312)”格式不行,可以改成这个试试,再不行,就试试别的
下课!
对了,如果你的vs没有 高级保存选项,通过下面方法可以调出来:

单击“工具”|“自定义”命令,弹出“自定义”对话框。
单击“命令”标签,进入“命令”选项卡。
在“菜单栏”下拉列表中,选择“文件”选项。
单击“添加命令”按钮,弹出“添加命令”对话框。
在“类别”列表中,选择“文件”选项;在“命令”列表中,选择“高级保存选项”选项。
单击“确定”按钮,关闭“添加命令”对话框。
选中“控件”列表中的“高级保存选项”选项,单击“上移”或者“下移”按钮,调整该命令的位置。
单击“关闭”按钮,完成“高级保存选项”命令的添加操作。

下课!

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值