vscode中文乱码问题及几种常见的解决方案

问题及原因

在这里插入图片描述
问题原因:代码文件的字符编码格式为UTF-8,但是terminal的字符编码格式为GBK
解决思路:统一代码文件和terminal的字符编码格式。

解决办法

说明:以下的解决方案是针对上述原因“代码文件的字符编码格式为UTF-8,但是terminal的字符编码格式为GBK”给出的,如果是其他情况需要自己稍作修改。

方法一

这个方法是修改代码文件的字符编码格式。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
然后运行:
在这里插入图片描述

方法二:chcp

这个方法是临时修改terminal的字符编码格式。
修改格式如下:
在这里插入图片描述
其中:65001代表UTF-8936代表GBK
然后运行:
在这里插入图片描述

Tips

vscode里面,如果想把GBK编码格式的文件转换成UTF-8编码格式的文件,可以在vscode里面安装GBK to UTF8 for vscode插件。
在这里插入图片描述
右击需要转换编码格式的文件,然后点击Convert encoding to UTF8即可。
在这里插入图片描述

方法三

在方法二的基础上,我们能否永久修改terminal的字符编码格式呢?答案是肯定的。
在我电脑上,vscode调用的是我的PowerShell,所以我只需要修改我本地PowerShell的字符编码格式即可。
Step1:
以管理员身份运行powershell并执行New-Item $PROFILE -ItemType File -Force
在这里插入图片描述
Step2:
此时你的电脑会多出一个空文件C:\Users\xxx\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1,往里面写入

$OutputEncoding = [console]::InputEncoding = [console]::OutputEncoding = New-Object System.Text.UTF8Encoding

在这里插入图片描述

Step3:
执行Set-ExecutionPolicy Unrestricted,输入y即可。
在这里插入图片描述
Step4:
输入chcp,检查以下,我们发现powershell的默认字符编码格式已成功修改为UTF-8
在这里插入图片描述
然后运行:
在这里插入图片描述
补充:
如果需要永久修改cmd的字符编码格式为UTF-8,首先win+r
在这里插入图片描述
在这里插入图片描述
输入计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor回车,然后新建一个字符串值。
在这里插入图片描述
这样子在每次打开cmd的时候,系统都会默认先执行一句chcp 65001cmd的字符编码格式修改为UTF-8。因为每次都是系统默认帮我们执行,所以我们就认为他是永久修改啦~


2023.4.2 补充:

如果是按照上面chcp 65001的方式,那么每次运行终端时都会出现Active code page: 65001这一句话。根据 丛雨16 的补充,chcp 65001 > nul 可以解决这一现象。(实测可以)

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

  • 65
    点赞
  • 252
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 11
    评论
VSCode中遇到的汉字乱码问题可以有多种解决方法。首先,确保你的代码文件的字符编码格式正确设置为UTF-8。你可以通过VSCode的设置界面进行设置,或者在文件保存时选择正确的编码格式进行保存。其次,确保你的终端(terminal)的字符编码格式也是UTF-8。可以通过在终端中修改环境变量来设置字符编码格式。另外,你还可以在VSCode中安装相应的插件,比如GBK to UTF8 for VSCode,来进行编码格式的转换。这个插件可以帮助你将GBK编码格式的文件转换成UTF-8编码格式的文件。要使用这个插件,只需右击需要转换编码格式的文件,然后点击"Convert encoding to UTF8"即可进行转换。综上所述,通过正确设置代码文件和终端的字符编码格式,或者使用插件进行编码格式的转换,可以解决在VSCode中遇到的汉字乱码问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [VSCode中文乱码解决方案总结(全)](https://download.csdn.net/download/lst666/10681847)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [vscode中文乱码问题几种常见解决方案](https://blog.csdn.net/im34v/article/details/126697006)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

im34v

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

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

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

打赏作者

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

抵扣说明:

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

余额充值