运维系列:VS2017修改编码格式为utf-8,再也不用担心乱码了




VS2017修改编码格式为utf-8,再也不用担心乱码了

对于国内用户来说,大多设置Windows操作系统语言为简体中文(编码为GBKGB2312),由此导致Visual Studio 2017默认采用GBK/GB2312编码格式,其创建的项目文件(.cpp, .h等)都采用GBK/GB2312编码,可能会给代码的移植性带来一点阻碍(主要是中文乱码),笔者就经常用VS运行github等的项目然后出现如下警告或者乱码:

warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失

在此,建议统一使用UTF-8(无bom)编码格式,那么具体要怎么修改呢?请看下文几种方法(视情况择一即可)。

最简单的好像是修改操作系统默认语言为英语(English)(笔者没尝试),英语不错或者想锻炼英语能力的小伙伴可以试试(仅供参考)

使用VS2017的“高级保存选项”

由于这个选项在vs2017中是默认隐藏的,需要手动调出来。具体操作方法如下:
1、单击“工具”➡“自定义”,弹出“自定义”对话框。
2、单击“命令”标签➡进入“命令”选项卡。
3、“菜单栏”下拉列表➡选择“文件”选项。
4、单击“添加命令”➡弹出“添加命令”对话框。
5、在“类别”列表中,选择“文件”选项;在“命令”列表中,选择“高级保存选项”选项。
6、单击“确定”按钮,关闭“添加命令”对话框。
7、选中“控件”列表中的“高级保存选项”选项,单击“上移”或者“下移”按钮,可以调整该命令的位置。
8、单击“关闭”按钮,完成“高级保存选项”命令的添加操作

然后选中高级保存选项,弹出的对话框可以选择编码utf-8

在这里插入图片描述
在这里插入图片描述

使用ForceUTF8插件

工具拓展和更新联机➡搜索框输入“ForceUTF8”➡下载安装
安装此插件后,所有文件均会以utf-8编码格式保存,方便省心。

在这里插入图片描述

最后非常重要的一步,那就是指定使用utf-8编译!

选中当前项目——右键属性——配置属性——C/C++——命令行——输入/utf-8
只有完成这一步,warning信息才会真正消失。

在这里插入图片描述

然而,改完后我又发现了一个新问题,那就是vs2017的控制台也是默认使用GB2313编码的,所以控制台又乱码了→_→(我太难了)…

ps:查看控制台所用编码的方法:点击控制台标题栏左上角–>属性–>选项–>找到当前代码页能看到编码格式

所以又需要更改vs2017控制台的编码格式为utf-8,方法如下:
1.按下win(windows键)+R,输入regedit然后回车进入到注册表编辑器(温馨提示:修改注册表有风险,操作前建议先备份)

在这里插入图片描述

2.找到 计算机\HKEY_CURRENT_USER\Console

在这里插入图片描述

3.寻找有vsconsole等字符串的相关项

在这里插入图片描述
在我这里是第三项 C:_Program Files (x86)_Microsoft Visual Studio_2017_Professional_Common7_IDE_CommonExtensions_Platform_Debugger_VsDebugConsole.exe,不同电脑这里显示的名称可能不一样,不过没关系,只要是vs的控制台就行。

4.修改CodePage值

在这里插入图片描述

选中右边栏CodePage,右键将其值936(该值对应GB2312)修改其值为65001(该值对应的就是utf-8编码),上图我已经更改过了。
修改完后,用vs编译运行C++就不会出现控制台乱码了。

ps:以上方法也同样适合更改windows系统控制台的编码格式。







夏虫爱语冰

VS2017修改编码格式为utf-8,再也不用担心乱码了

  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

坦笑&&life

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值