常见终端工具输出中文乱码的解决方案

现在主流的代码编辑器默认编码格式都是UTF-8,这样编译出来的可执行程序在终端中经常会

出现乱码的情况。我日常工作主要使用的就是PowerShell和Git Bash,因此今天主要和大家分享这两个终端工具遇到乱码问题怎么解决。

PoweShell

①首先我们检查输入字符的编码格式,输入如下面命令:

bash 复制代码
[Console]::InputEncoding = [System.Text.Encoding]::UTF8

结果示例:

然后输入下面的命令检查输出:

bash 复制代码
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8

结果示例:

可以看到目前我的输入字符仍然以UTF-8形式编码。

②打开 PowerShell,执行如下命令:

bash 复制代码
notepad $PROFILE

如果提示文件不存在,先执行下面的命令创建:

bash 复制代码
New-Item -Path $PROFILE -ItemType File -Force

在打开的文件中把这些内容添加进去:

bash 复制代码
# 统一控制台编码为UTF-8
[Console]::InputEncoding = [System.Text.Encoding]::UTF8
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
# 统一文件读写默认编码为UTF-8
$PSDefaultParameterValues['*:Encoding'] = 'utf8'

效果如下:

保存文件,重启 PowerShell 生效。

Git Bash

git bash我不推荐大家来运行exe,对windows编译出来的程序git bash不太适配,咱们尽量就用powershell解决就好。有低年级同学看了我下面这篇文章之后问我VScode默认没有控制台窗口怎么观察演示效果?

https://blog.csdn.net/qq_59757948/article/details/156981661?spm=1001.2014.3001.5501

我倒是想了个不用装其他插件的方法,直接在exe所在目录开启Windows终端:

然后运行exe就行了:

效果如下:

如果需要调试就用VScode里面的powershell窗口看打印信息就行。

相关推荐
DONSEE广东东信智能读卡器4 小时前
用PowerShell实现Windows 本地 WSS/HTTPS 自签名证书配置方法
windows·网络协议·https·powershell·身份证阅读器
DogDaoDao7 小时前
Windows 下 Git 报错:`touch` 无法识别 —— 原因分析与 7 种解决方案(从入门到精通)
windows·git·程序员·npm·powershell·cmd·touch
s_w.h7 小时前
【 linux 】认识make和makefile
linux·运维·bash
IMPYLH11 小时前
Linux 的 who 命令
linux·运维·服务器·bash
Donk_671 天前
Shell 数组实践
linux·算法·bash
IMPYLH2 天前
Linux 的 unexpand 命令
linux·运维·服务器·bash
IMPYLH2 天前
Linux 的 uniq 命令
linux·运维·服务器·bash
IMPYLH2 天前
Linux 的 unlink 命令
linux·运维·服务器·bash
console.log('npc')3 天前
Windows 11 安装 WSL2 + Ubuntu + Docker + Codex + Sub2API 教学
windows·docker·powershell·ubantu·codex
CV工程师(Ctrl)3 天前
Codex 在 Windows 中文路径执行bash命令编码问题复盘
powershell·codex