VSCode终端中文乱码问题解决

VSCode终端中文乱码问题解决

问题描述

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

问题原因

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

解决方案

修改PowerShell配置文件

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

  1. 找到配置文件位置
powershell 复制代码
$PROFILE
# 输出:C:\Users\用户名\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
  1. 创建配置文件
powershell 复制代码
New-Item -Path $PROFILE -Type File -Force
  1. 添加编码设置
powershell 复制代码
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终端后,运行:

powershell 复制代码
echo "测试中文显示:微博验证接口已更新"

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

总结

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

相关推荐
奔跑的web.1 分钟前
UniApp 路由导航守
前端·javascript·uni-app
程序员良许2 分钟前
嵌入式处理器架构
后端·单片机·嵌入式
EchoEcho5 分钟前
记录overflow:hidden和scrollIntoView导致的页面问题
前端·css
MrSYJ6 分钟前
Redis 做分布式 Session
后端·spring cloud·微服务
Cache技术分享7 分钟前
318. Java Stream API - 深入理解 Java Stream 的中间 Collector —— mapping、filtering 和 fla
前端·后端
竟未曾年少轻狂10 分钟前
Vue3 生命周期钩子
前端·javascript·vue.js·前端框架·生命周期
TT哇15 分钟前
【实习】数字营销系统 银行经理端(interact_bank)前端 Vue 移动端页面的 UI 重构与优化
java·前端·vue.js·ui
蓝帆傲亦16 分钟前
Web前端跨浏览器兼容性完全指南:构建无缝用户体验的最佳实践
前端
晴殇i21 分钟前
【前端缓存】localStorage 是同步还是异步的?为什么?
前端·面试
不一样的少年_22 分钟前
Chrome 插件实战:如何实现“杀不死”的可靠数据上报?
前端·javascript·监控