发布时间:2026-05-11
浏览次数:0
在仅仅两年的时间里,Code已然从编程工具演变成通用AI工具,今年2月初,一篇标题为“一个插件,致使全球软件股蒸发多达2850亿美元”的新闻,引起了我对其在法律场景中应用的关注。在此之前,因GW这一缘由,我无法顺畅地使用它,而后随着各大厂商推出token plan,方才于最近开始逐渐深入对其进行使用。
当前版本在其中运行得极为顺畅,无需再依赖WSL环境来运行,然而对于中文字符的支持状况欠佳,涵盖中文名称、中文路径等等,常常会出现乱码问题。简而言之,乱码问题的根源在于编码不一致,当下AI编程工具普遍采用UTF - 8编码,而中文系统的默认编码是GBK,两者相互冲突进而致使了乱码,今日就顺便解决这个问题。
一、为什么中文会出现乱码
问题的核心是编码冲突,你可以把这个过程想象成一个翻译链条:
首先,Code是用于写入或者修改文件当中所采用的,它呈现为UTF - 8编码格式,而这一编码格式属于全球通用的那种标准编码形式。
此外,中文系统在读取文件内容时,默认采用 GBK 编码,在显示文件内容时,同样默认采用 GBK 编码。
最终,在系统或者编辑器运用GBK的规则去解读UTF - 8编码的文件之际,中文字符会被错误解析,进而显示为乱码,这是最后的情况。
有一种典型的乱码链路是,由代码以UTF - 8的形式写到文件之中,之后文件经过终端或者编辑器以GBK的格式进行读取,最后呈现出来的是中文乱码。
二、如何彻底解决乱码问题?
上面的内容已然清楚知晓生成文档的缘由,也就是采用UTF - 8编码进行写入操作,然而系统却是运用GBK编码来开展读取行为,如此一来,产生乱码的情况自然就会出现。
这个时候,我猛地记起来,在魔兽世界里,部落跟联盟进行面对面汉化之际,呈现的就是这般乱码的情况。
话说回正题,解决的思路十分清晰明确,那便是把所有与之有关环境的编码统统统一成为 UTF - 8,你能够依照以下的顺序去进行配置,借此达成一劳永逸的成效。
步骤 1:编辑 配置文件
打开或创建配置文件:
notepad $PROFILE
文件路径通常为:
C:\Users\\\\
..ps1
步骤 2:添加编码配置
将以下内容复制到配置文件中:
# 设置控制台输出编码为 UTF-8
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
# 设置控制台输入编码为 UTF-8
[Console]::InputEncoding = [System.Text.Encoding]::UTF8
# 设置 PowerShell 默认编码为 UTF-8
$PSDefaultParameterValues['*:Encoding'] = 'utf8'
# 自动切换代码页到 65001(UTF-8)
chcp 65001 > $null
步骤 3:使配置生效
方式一:重启 (推荐)
方式二:重新加载配置
. $PROFILE
三、验证测试
重新打开 ,执行以下命令测试中文显示:
Write-Host "中文测试:你好 PowerShell!"
正常输出如下
高级验证脚本
上文已然验证了中文显示,对于特殊符号同样能够正常显示,你能够在,去执行以下那个命令借此测试中文也就是特殊符号。
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
chcp 65001 | Out-Null
Write-Host "当前编码:$([Console]::OutputEncoding.WebName)"
Write-Host "中文测试: 你好世界 "
正常输出如下
中文测试:你好 !
高级验证脚本:
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
chcp 65001 | Out-Null
Write-Host "当前编码:$([Console]::OutputEncoding.WebName)"
Write-Host "中文测试: 你好世界 "
正常输出如下
四、永久生效方案(可选)
要是上述的那种方案还是偶尔会出现乱码的情况,能够借助注册表进行永久的设置,然而我并不建议采用修改注册表这样的方案。
以管理员身份运行 :
# 设置当前用户控制台默认代码页为 UTF-8
reg add "HKCU\Console" /v CodePage /t REG_DWORD /d 65001 /f
# 设置命令处理器默认代码页
reg add "HKLM\SOFTWARE\Microsoft\Command Processor" /v CodePage /t REG_DWORD /d 65001 /f
重启电脑后生效。
五、 系统级 UTF-8 设置(可选方案)
如果问题依然存在,启用 全局 UTF-8 支持:
点开,控制面板,找到区域,点击管理选项卡,再点击更改系统区域设置,勾选,Beta版:使用UTF - 8提供全球语言支持。
重启电脑
六、懒人方案
当然咯,你能够选择直接去给出这样一个提示词,那便是“帮我修复中文显示乱码的问题”。
七、常见问题 FAQ
问题1:配置后仍然乱码?
问题2:影响其他程序吗?
问题3:可以撤销吗?
官方曾经承认过,因为基础设施存在Bug,像是TPU编译器出现问题或者路由出现错误sublime text 3 乱码,所以偶尔在英文回答里边会忽然跳出泰文、中文或者其他的乱码字符。要是乱码出现在对话框的流式输出当中,而并非保存之后的文件里面,那么通常是官方服务器出状况了,刷新或者重试就行,不需要修改本地设置。
如果,你身为开发者,那么,最后给出的建议是,WSL方案为现如今极为稳健且可靠的选择,因为,Linux内核在本质上天然地对"UTF-8"予以支持;要是,你仅仅只是普通的从事办公事务的用户,那么sublime text 3 乱码,开启系统当中的UTF-8 Beta选项可谓是最为省心也最为便捷的路径。
如有侵权请联系删除!
Copyright © 2023 江苏优软数字科技有限公司 All Rights Reserved.正版sublime text、Codejock、IntelliJ IDEA、sketch、Mestrenova、DNAstar服务提供商
13262879759
微信二维码