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

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

相关推荐
程序员敲代码吗1 天前
如何通过命令行启动COMSOL的参数化、批处理和集群扫描
java·c#·bash
dingdingfish1 天前
Bash 学习 - 第1章:Introduction
bash·shell·programming·introduction
xuchaoxin13752 天前
bash中的字符串处理@输出和格式化打印@echo@printf
chrome·bash
xuchaoxin13752 天前
bash@特殊字符@环境变量符号@特殊参数@参数扩展和替换@字符串处理用法总结
开发语言·bash
dingdingfish2 天前
Bash 学习 - 第2章:Definitions
bash·definition
xuchaoxin13752 天前
bash@参数扩展@参数转换@参数扩展操作符
bash
提娜米苏3 天前
非Root环境下的数据挂载解决方案:SSHFS与Mount详解
bash·sshfs
这儿有一堆花3 天前
任何东西都可以转成 Base64!?
bash
wasp5203 天前
Banana Slides 深度解析:AI Core 架构设计与 Prompt 工程实践
人工智能·prompt·bash
市场部需要一个软件开发岗位3 天前
一个无人机平台+算法监督平台的离线部署指南
java·python·算法·bash·无人机·持续部署