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

相关推荐
IT_陈寒7 小时前
SpringBoot自动配置坑了我一晚上,原来问题出在这
前端·人工智能·后端
SelectDB8 小时前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
kyriewen8 小时前
AI 生成的代码能跑就行?这 5 个坑迟早炸
前端·javascript·ai编程
SelectDB8 小时前
秒级弹性、最高降本 70%:SelectDB Serverless 如何重塑云数仓资源效率
大数据·后端·云原生
PinkSun8 小时前
Spring AI ChatMemory踩坑实录:重启丢数据、Agent丢记忆、对话溢出
后端·ai编程
谷子在生长8 小时前
纯血鸿蒙自定义弹窗最佳实践:从「到处复制」到「一行调用」
前端·harmonyos
壹方秘境8 小时前
我用Go语言开发了一个跨平台的HTTPS抓包和调试工具
前端·后端·ios
神秘面具男8 小时前
HarmonyOS 6.0跨端远程控制
前端·后端
枫树下x8 小时前
NestJS基础框架
前端