VSCode终端中文乱码问题解决

223 阅读1分钟

VSCode终端中文乱码问题解决

问题描述

最近在VSCode的集成终端中使用PowerShell时,发现中文字符显示为乱码,这严重影响了开发体验,特别是在查看输出时。

问题原因

VSCode的集成终端默认使用系统PowerShell,而Windows PowerShell默认使用GBK编码,但VSCode大多使用UTF-8编码,这就导致了编码不匹配的问题。

解决方案

修改PowerShell配置文件

原理:PowerShell配置文件($PROFILE)是PowerShell的启动脚本,每次启动PowerShell时都会自动执行这个文件中的命令。通过在配置文件中设置编码相关命令,可以实现全局生效的编码配置。

  1. 找到配置文件位置
$PROFILE
# 输出:C:\Users\用户名\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
  1. 创建配置文件
New-Item -Path $PROFILE -Type File -Force
  1. 添加编码设置
Add-Content -Path $PROFILE -Value @"
# 设置UTF-8编码
chcp 65001
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
[Console]::InputEncoding = [System.Text.Encoding]::UTF8
"@
  1. 重启VSCode终端 关闭VSCode,重新打开,或者重启集成终端。

验证效果

重启VSCode终端后,运行:

echo "测试中文显示:微博验证接口已更新"

如果正常显示中文,说明问题已解决。

总结

最简单的解决方案是修改PowerShell配置文件,添加UTF-8编码设置。这样所有使用PowerShell的地方都会自动应用这个设置,包括VSCode的集成终端。