解决VSCode输出中文乱码问题
文章目录
前言
在刚接触VSCode编程过程中,经常会遇到中文乱码的问题。查询了不少相关的博客,解决方法很多,但实际没有帮到我,琢磨了半天,找到了可行方法,这里分享给大家。
本人的乱码实例(TAT)
一、问题的起因
UTF-8和GBK是两种不同的字符编码方式,它们用不同的字节序列来表示同一个字符。例如,中文字符“你”在UTF-8编码中是用三个字节表示的,分别是E4 BD A0,而在GBK编码中是用两个字节表示的,分别是C4 E3。如果一个文件是用UTF-8编码保存的,但是用GBK编码来读取,那么就会出现乱码,因为GBK编码无法正确识别UTF-8编码的字节序列。反之亦然。
vscode的终端是调用系统的cmd命令行工具,而cmd的默认编码方式是GBK。如果我们在vscode中用UTF-8编码写代码,并且在代码中包含中文字符,那么当我们在终端运行代码时,就会出现中文乱码的问题。为了解决这个问题,我们需要将vscode和cmd的编码方式统一为同一种,要么都是UTF-8,要么都是GBK。
二、解决方法
我们既可以都统一为UTF-8,也可以统一为GBK。这里我们采用统一为UTF-8。因为这样可以不改变vscode的默认设置,只需要在预设里面把cmd窗口的编码方式临时改为UTF-8即可,这样就不用更改文件的格式了(否则所有utf8文件都要手动转GBK很麻烦)。
1.进入setting.json文件
打开文件-首选项-设置,进入设置面板
在输入框中输入settings ,就可以找到进入settings.json的地方
2.输入代码
在setting.json中输入以下代码:
"terminal.integrated.profiles.windows": {
"PowerShell": {
"source": "PowerShell",
"icon": "terminal-powershell",
"args": [
"-NoLogo",
"-NoExit",
"-Command",
"chcp.com 65001"
]
},
"Command Prompt": {
"path": [
"${env:windir}\\Sysnative\\cmd.exe",
"${env:windir}\\System32\\cmd.exe"
],
"args": [
"/K",
"chcp 65001"
],
"icon": "terminal-cmd"
}
}
示例(注意不要忘了前后的逗号)
3.验证
重启vscode,再跑一遍代码,应该问题就解决了~
总结
以上就是分享的内容啦如果还有方法的话大家可以在评论区补充
版权归原作者 xlf5323 所有, 如有侵权,请联系我们删除。