解决vscode中文乱码问题(不是改GBK,亲测有效)

  • 方式一:解决vscode中文乱码问题(不是改GBK,亲测有效)
  • 中文乱码出现的原因
  • 问题解决过程
  • 具体设置:
  • 其他的可行方案总结
  • 方式二: VSCode解决中文乱码问题



方式一:解决vscode中文乱码问题(不是改GBK,亲测有效)


有一天想配置配置vscode。配置好了以后,下载vscode后也出现了输出中文的乱码问题,用与codeblocks相似的解决方法解除之,又发现网上都是将编码转为GBK(这样用其他应用打开时可能又会出现乱码),好像没有提到这个方法,特此记录之。希望像我一样的初学者可以解决类似的问题。

中文乱码出现的原因

是因为中文主要有两套编码,一套是GBK,一套是UTF-8,代码编辑器一般默认用UTF-8,而在输出的终端中默认是GBK,所以在UTF-8下的中文输出到GBK的终端自然会乱码。

要解决这个问题,我们可以不用改变文件的编码,而是给编译器加一条指令,让编译器执行时把UTF-8转成GBK给终端,就能解决问题了!

问题解决过程

配置好vscode后,在工作区会有C++插件自动产生的json文件,json我将其理解成一种配置文件,新手不要觉得它没有UI界面,所以打开之后怵的慌,其实他就是几条设置。

具体设置:

打开vscode,按ctrl+shift+p打开控制面板,搜索C/C++:编辑配置(JSON),按enter进入,会打开一个叫c_cpp_properties的json配置文件,按图中操作即可。(觉得json真的看着不习惯的话搜索C/C++:编辑配置(UI), 找到相应的那一项更改,也没问题)

"-fexec-charset=GBK",    //复制这条语句到下图所示的位置(UI界面把引号和逗号去掉)

在如图所示的UI界面进行更改或在json文件中进行更改(选择其中一种方法就行)

vscode 运行java 中文乱码 解决vscode中文乱码的代码_vscode 运行java 中文乱码


UI界面👆 json文件👇

vscode 运行java 中文乱码 解决vscode中文乱码的代码_vscode 运行java 中文乱码_02

更改之后再尝试输出,应该就会成功了!(可以看到我的终端正确的输出了中文)

其他的可行方案总结

1.将代码格式全部转换为GBK,可能需要将所有编辑器的默认编码都设为GBK,且传给他人也容易乱码。

2.在设置里将整个系统(包含终端)的代码改为UTF-8,优点是根本上解决了输出乱码;但本人尝试过,缺点也很大。就是电脑上其他用GBK编写的软件都会出现错误,相当于用大错误换小错误,可以尝试,但不推荐。