摘要
VS默认编码为GBK导致中文乱码的问题
内容
在利用VS在编写代码时,源代码会自动编码为GBK字符集,GBK可以识别中文,但是在英文编译环境下GBK则会显示成乱码。这时我们需要把GBK字符集转换为另一种国际通用字符集,即UTF8国际编码字符集。这样在编译中遇到中文字符时就不会出现乱码现象了。
跨windows和ubuntu的文本文件中,如果存在中文,由于两个系统默认编码不同,可能遇到乱码问题。例如在windows中用vs写的代码,放到ubuntu中,中文部分就会变成乱码。如下图:
这是因为vs中文本默认是GB2312
编码,而ubuntu文本是utf-8 无BOM
编码。所以,本文通过修改windows下vs的默认编码方式(改为utf-8 无BOM
),来实现vs下保存的文本文件放到ubuntu下也不会乱码。
百度经验里也说了:
在利用VS2013在编写代码时,源代码会自动编码为GBK字符集,GBK可以识别中文,但是在英文编译环境下GBK则会显示成乱码。这时我们需要把GBK字符集转换为另一种国际通用字符集,即UTF8国际编码字符集。这样在编译中遇到中文字符时就不会出现乱码现象了。
修改vs默认编码方式如下:
单个文件的编码方式修改:
点击编辑区->高级保存选项->
修改VS默认编码:
未找到比较好的方法,可以先看看参考链接。
思路:批量修改为utf-8,保存时默认修改为utf-8.
相关/参考链接
VS之设置文件编码格式
VS 修改默认编码格式 为utf-8 无 BOM 与 utf-8 带BOM
「带 BOM 的 UTF-8」和「无 BOM 的 UTF-8」有什么区别?网页代码一般使用哪个? - 陈甫鸼的回答 - 知乎
2015年-VS2015只支持带BOM的UTF-8。如果你不想带BOM,那就不要往里面写中文。
Visual Studio 2015 中如何使文件默认保存为 UTF - 8 编码格式?