news 2026/6/30 5:42:34

Codex 中文乱码问题解决方案(Windows)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Codex 中文乱码问题解决方案(Windows)

Codex 中文乱码问题解决方案(Windows)

适用于 Codex / Copilot / AI 编码工具,Java / TypeScript / Python 项目


问题说明

在 Windows 11 环境下使用 AI 编码工具时,生成的代码中文经常变成乱码(如æˆ'爱中文???),导致编译失败。

根本原因:AI 工具输出 UTF-8,但 Windows 终端默认使用 GBK 编码,编码冲突导致乱码。

Codex(UTF-8)→ Windows 终端(GBK)→ 文件写入(错误编码)→ IDE 读取(UTF-8)→ 乱码

解决核心原则:全链路统一为 UTF-8(无 BOM)


步骤 1:安装 Windows Terminal

如果你用的是老式的"命令提示符(cmd)"黑窗口,需要先装 Windows Terminal。

打开 cmd,运行:

wingetinstall--idMicrosoft.WindowsTerminal

如果 winget 报错,去Microsoft Store(微软商店)搜索 “Windows Terminal” 安装。

装完后按Win键搜索“Terminal”打开。


步骤 2:安装 PowerShell 7

在终端中运行:

wingetinstall--idMicrosoft.Powershell

安装完成后输入pwsh启动,验证版本:

pwsh$PSVersionTable

确认PSEdition显示为Core即安装成功。


步骤 3:配置 PowerShell 7 的 Profile

在 pwsh 中运行:

New-Item-Path$PROFILE-ItemTypeFile-Forcenotepad$PROFILE

在打开的记事本中粘贴以下内容,保存并关闭:

[Console]::OutputEncoding=[System.Text.Encoding]::UTF8$OutputEncoding=[System.Text.Encoding]::UTF8$PSDefaultParameterValues['Out-File:Encoding']='utf8'$PSDefaultParameterValues['Set-Content:Encoding']='utf8'$PSDefaultParameterValues['Add-Content:Encoding']='utf8'

重新打开 pwsh,输入以下命令验证:

[Console]::OutputEncoding

显示UTF-8即配置成功。


步骤 4:将 Windows Terminal 默认终端改为 pwsh

  1. 打开 Windows Terminal
  2. 点击标签页旁边的下拉箭头(或按Ctrl + ,
  3. 左侧选择“启动”
  4. “默认配置文件”改为PowerShell 7(pwsh)
  5. “保存”

⚠️ 不要使用powershell.exe(旧版)或cmd.exe


步骤 5:配置 IDE 编码

VSCode

Ctrl + ,打开设置:

  • Files: Encoding→ 设为utf8
  • Files: Auto Guess Encoding关闭

或直接在settings.json中添加:

{"files.encoding":"utf8","files.autoGuessEncoding":false}
IntelliJ IDEA

进入Settings → Editor → File Encodings

  • Global Encoding →UTF-8
  • Project Encoding →UTF-8

步骤 6:项目级编码配置

在项目根目录创建两个文件:

.editorconfig
root=true[*]charset=utf-8 end_of_line=lf
.gitattributes
*text=autoeol=lf *.java text working-tree-encoding=UTF-8 *.ts text working-tree-encoding=UTF-8 *.js text working-tree-encoding=UTF-8

步骤 7:给 Codex 添加 Prompt 约束

在与 Codex 对话时,提前加上以下约束:

生成代码必须遵守:1. 所有文件编码 UTF-8(无 BOM)2. 禁止 UTF-16 / GBK3. 中文直接输出,不允许\uXXXX4. 文件写入必须使用 UTF-8

步骤 8:注意写文件的方式

不要用这些方式写文件(会产生 UTF-16):

echo"中文">file.txt Out-File file.txt

使用这种方式:

Set-Content file.txt-Encodingutf8

步骤 9(进阶):WSL / Bash 环境

如果 Codex 调用 bash 时出现乱码,设置环境变量:

$env:WSL_UTF8="1"

验证是否配置成功

运行以下命令测试:

Set-Content test.txt"你好世界"-Encodingutf8

用记事本或 VSCode 打开test.txt,中文正常显示即配置成功。


优先级总结

优先级操作重要程度
1安装 Windows Terminal⭐⭐⭐ 必须
2安装 PowerShell 7⭐⭐⭐ 必须
3配置 UTF-8 Profile⭐⭐⭐ 必须
4改默认终端为 pwsh⭐⭐⭐ 必须
5IDE 设置 UTF-8⭐⭐⭐ 必须
6添加 .editorconfig⭐⭐ 推荐
7Codex Prompt 约束⭐⭐ 推荐
8WSL_UTF8 配置⭐ 进阶

完成以上配置后,可以解决90% 以上的 Codex 中文乱码问题。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/30 5:41:54

GitHub Actions + 阿里云 OSS:OIDC 免密同步构建产物

装包同步到阿里云 OSS,后续官网可以提供国内镜像链接。全程使用 OIDC 免密认证,不存长期 AccessKey。 过程中遇到不少问题,带着 claude code 折腾了几个小时,才整好。下边是详细的过程记录。顺带说一句 Molio 在 github 上开源了&…

作者头像 李华
网站建设 2026/6/30 5:41:42

运维转大模型:实践笔记 06

聊《运维转大模型:实践笔记 06》之前,先说一句实在的:别急着背概念,先看它在真实项目里到底解决什么问题。摘要本文概述文章目标、核心观点和实践价值。摘要:很多运维同学转型 AI 时,容易陷入“为了用 LLM …

作者头像 李华
网站建设 2026/6/30 5:38:46

终极黑客工具排名表

这并非游戏工具强度排名。即使是“C级”工具,在这里也可能成为救命稻草。这是一份针对你的大脑和工作流程的优先级列表:哪些工具需要优先掌握,哪些工具需要每天依赖,以及哪些工具需要留着以备不时之需。 S级:不可或缺…

作者头像 李华
网站建设 2026/6/30 5:38:13

Rocky 9 bond0 异常状态

报错信息&#xff1a;NetworkManager 叠加了多个连接配置&#xff0c;导致 bond0 上出现“多来源 IP” bond0: <NO-CARRIER,BROADCAST,MULTICAST,MASTER,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000link/ether 32:f8:3f:87:c3:b9 brd ff:ff:ff:ff:ff…

作者头像 李华
网站建设 2026/6/30 5:36:38

MCP协议与Playwright结合:实现零代码浏览器自动化

1. 项目概述&#xff1a;当MCP遇上Playwright&#xff0c;自动化进入“零代码”时代最近在开发者圈子里&#xff0c;MCP&#xff08;Model Context Protocol&#xff09;和Playwright这两个词的热度居高不下。如果你还在手动点点点做UI测试&#xff0c;或者为搭建复杂的自动化脚…

作者头像 李华
网站建设 2026/6/30 5:36:32

计算机Java毕设实战-基于 SpringBoot 的应急救援物资出入库管控系统设计 灾害场景下救援物资调度平台的设计与实现【完整源码+LW+部署说明+演示视频,全bao一条龙等】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华