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的集成终端。

相关推荐
费益洲3 小时前
用 Shields.io 定制 README 个性徽章
后端
3 小时前
前端页面空白监控:从检测到溯源的全链路实战方案
前端
妮妮喔妮3 小时前
如何把HTML转化成桌面Electron
前端·javascript·electron
日月晨曦3 小时前
React 在线 playground 实现指南:让代码在浏览器里「原地爆炸」的黑科技
前端·react.js
南北是北北3 小时前
Flow 里的上游/下游
前端·面试
金州_拉文3 小时前
uniapp
前端·uni-app
鹏程十八少3 小时前
10. Android <卡顿十>高度封装Matrix卡顿, 修改Matrix源码和发布自己的插件
前端
写代码的stone3 小时前
antd时间选择器组件体验优化之useLayoutEffect 深度解析:确保 DOM 更新时序的关键机制
前端
Lazy_zheng3 小时前
8 个高频 JS 手写题全面解析:含 Promise A+ 测试实践
前端·javascript·面试