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

现在主流的代码编辑器默认编码格式都是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窗口看打印信息就行。

相关推荐
IMPYLH2 天前
Linux 的 basename 命令
linux·运维·服务器·ssh·bash
IMPYLH3 天前
Linux 的 b2sum 命令
linux·运维·服务器·bash
波特率1152003 天前
bash命令进阶学习(Shell 元字符)
linux·bash·shell
knighthood20014 天前
ROS1中source xxx.bash失效
开发语言·bash
IMPYLH4 天前
Bash 的 basenc 命令
linux·运维·服务器·bash·shell
IMPYLH4 天前
Linux 的 arch 命令
linux·运维·服务器·bash
Be for thing4 天前
Bash 编程语法
学习·bash
IMPYLH5 天前
Linux 的 base64 命令
linux·运维·服务器·bash·shell
IMPYLH5 天前
Linux 的 base32 命令
linux·运维·服务器·bash·shell
LuL_Vegetable5 天前
写一个Linux服务器自动tcpdum抓包脚本
linux·wireshark·bash·tcpdump