VS2017修改编码格式为utf-8,再也不⽤担⼼乱码了
unicode文件格式对于国内⽤户来说,⼤多设置Windows操作系统语⾔为简体中⽂(编码为GBK或GB2312),由此导致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.寻有vs、console等字符串的相关项
在我这⾥是第三项 C:_Program Files (x86)_Microsoft Visual
Studio_2017_Professional_Common7_IDE_CommonExtensions_Platform_,不同电脑这⾥显⽰的名称可能不⼀样,不过没关系,只要是vs的控制台就⾏。
4.修改CodePage值
选中右边栏CodePage,右键将其值936(该值对应GB2312)修改其值为65001(该值对应的就是utf-8编码),上图我已经更改过了。修改完后,⽤vs编译运⾏C++就不会出现控制台乱码了。
ps:以上⽅法也同样适合更改windows系统控制台的编码格式。
以上就是本⽂的全部内容了,如果有帮助的话,不妨点个赞吖~
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论