cmd \033转义字符对输出内容进行颜色变化出现乱码的解决办法

解决cmd \033转义字符被识别时乱码

解决问题的过程

重装了一次系统之后,改项目bug的时候发现了flask的GET和POST请求的输出信息全部带有乱码,具体如下
在这里插入图片描述
刚看到这种类型的乱码的时候,还以为是哪里的编码出了问题,最终把cmd的默认字符集改为了utf-8(中文乱码可以通过这种办法解决,建议是直接更改注册表的方式,能百度到)
在这里插入图片描述
然而仍然不能解决问题,我对比了原来的截图发现这一段原本是有颜色的,现在正好在有颜色的一段的字符串首和字符串末出现乱码,于是定位到这是cmd改变字体颜色时出现的问题。但在百度上没有看到任何与“更改cmd输出内容颜色时出现乱码”的问题,只要一带有关键词“乱码”,就都搜到的是中文乱码的问题,和这个问题完全不一样。学习了python改变cmd输出内容颜色的知识后,完全定位了问题。
cmd控制台有“\033”这个转义符号,而正是这个“\033”出现了问题,变成了?[,这里的问号复制出来是一个方块(乱码专用符号,滑稽)。然而就算如此仍然找不到相关的问题,最后在一篇讲\033如何进行转义的文章中,找到了办法。
https://www.cnblogs.com/naiij/p/9772584.html
它讲的是如何使用cmd输出彩色字体

ANSI转义序列是一种带内信号的转义序列标准,用于控制视频文本终端上的光标位置、颜色和其他选项。

由此我自己认为可能是缺少某种依赖而导致\033无法被识别。抱着试一试的心态,安装了ANSICON,果真成功了。
在这里插入图片描述
注意:这种方法不是解决 \033无法识别 或者 变成箭头 这种问题的办法。

解决问题办法

  1. 点这里下载ANSICON --From Github
  2. 下载zip
    在这里插入图片描述
  3. 解压后使用cmd控制台进入该文件夹(64位系统进入x64,32位系统进入x86)
    在这里插入图片描述
  4. 分别运行下面两行代码
    ansicon.exe -i
    ansicon.exe -l
  5. 然后就可以解决这样的乱码问题了
    在这里插入图片描述

有其他什么细节问题欢迎了解的dalao指正,就是因为搜不到这个问题,才写这篇文章,希望能够帮到同样遇到这个问题的人。

  • 24
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值