解决windows下 vs控制台中文显示乱码问题

不知道什么时候开始,笔者用vs进行中文相关操作的时候,控制台输出就变成了这样

 

这输出的是什么玩意儿???

笔者凭借着粗浅的知识,以为是文件终结符出现的奇妙错误,多了0a/0d让中文读取错误,于是在结尾加上了几个数字

发现并没有什么卵用,甚至吃掉了我的1

 

于是求助网络上各位大神blog

先发现我的系统集代码页没有问题

再看发现我的vs高级设置也没有问题,同样是中文(这个详见 blog.csdn.net/nightwizard2030/article/details/77503455 注意我的跟他不一样是改成了GB2313)

 

然后网上再也没有更多的解决方案了,纠结了一下午的时间,笔者终于发现了问题所在

用notepad++ 打开源txt文件,发现默认编码是utf-8,但是系统集应该是gbk

于是利用软件自带功能将文件转成中文编码,结果!!

这些字符就是上面vs出现的乱码

之前我一直使用的是默认的记事本编辑,于是猜测记事本实际上是以utf-8保存的(但是明明系统是gbk,很疑惑),所以利用notepad++重新以gb2312编辑(在上面的界面删掉乱码然后重新编辑就行),再用vs运行

bingo!激动到哭泣

再去掉123只留中文

成功解决

 

 

PS:如果记事本以utf8保存,理论上感觉将vs也调成utf8,再将系统字符集改成utf8应该也能解决,大家多尝试几次就能解决,看见网上没有类似的解决方案,特此整理

 

 

在 Python 的 Windows 控制台中遇到中文显示乱码的情况,通常是由于字符编码设置不正确导致的。以下是解决步骤: 1. **确认默认代码页**:Windows 控制台默认使用 GBK 或 CP936 编码。你可以通过打开“控制面板”>“区域和语言”>“系统”>“高级”>“环境变量”,查看“系统变量”中的“当前默认代码页”是否为正确的中文编码。 2. **设置命令提示符(CMD)或 PowerShell 的编码**: - 在 CMD 中,右键点击图标,选择“属性”,然后在“常规”标签下,点击“更改系统变量”,在“新值”栏中输入“chcp 65001”并应用,这会将默认编码设为 UTF-8。 - 对于 PowerShell,打开“首选项”>“PowerShell选项”,在“配置”部分,点击“Ctrl+Shift+`”打开“Windows PowerShell ISE”(集成化命令行环境),切换到“环境”选项卡,找到“默认编码”并设置为“UTF-8”。 3. **代码文件编码**:如果你是在运行包含中文的 `.py` 文件,确保文件本身的编码是 UTF-8。在文本编辑器中,如 Notepad++,可以选择“另存为”并选择正确的编码。 4. **重新加载终端**:更改设置后,可能需要关闭并重新打开控制台窗口,让设置生效。 相关问题: 1. 如何在Python脚本中指定输出字符编码? 2. 为什么在CMD中设置UTF-8编码后中文仍然显示乱码? 3. PowerShell如何设置与CMD不同的字符编码?
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值