VScode查看python f.write()的文件乱码

VScode查看python f.write()的文件乱码

在使用 VScode 编写 python 代码,
在这里插入图片描述
print(),汉字正常显示,
使用 with open()as f:
f.write()文件后,
在 VScode 中 打开 保存的文件,就显示乱码,

在这里插入图片描述
print() 能正常显示汉字,按道理 保存的文件也应该 能正常显示文字,
于是 打开了 f.write() 的文件,一看,没问题,汉字是正常显示的,

在这里插入图片描述

这说明,问题出在 VScode 上,
是 VScode 读取 自己 f.write() 的文件时 出现了乱码,

经过,拜读 博主 金牛大王的 文章 找到原因,
在这里插入图片描述

vscode打开txt文件乱码

金牛大王

于 2021-04-20 09:06:53 发布

版权声明:本文为CSDN博主「金牛大王」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_43401436/article/details/115891481

原来是 VScode 读取 txt 文本文件的时候,选错了 编码,
在这里插入图片描述
读 文本 txt 文件 的中文,应该使用 GBK 或 GB2312 编码
而 VScode 默认 使用的是 UTF-8 编码,所以就乱码了,

解决方案:
手工指定 让 VScode 打开 txt 文本文件时,自动选择 编码格式,而不是一根筋 的 使用 默认 的 UTF-8 编码,

找到 VScode
file/preferences/settings/

在这里插入图片描述

然后 找
User/Text Editor/Files/Auto Guess Encoding
复选,就是把对号挑上。
在这里插入图片描述
把乱码文件关了,重新打开,中文显示就正常了,没有乱码了,
这个时候, VScode 聪明的智商又占领高地了,它智慧的使用了 自动猜一猜,并选择了正确的 中文编码 GB2312.
在这里插入图片描述

感兴趣的同学可以去看看 金牛大王的解决此问题的原文,给他也点点赞。

在这里插入图片描述

vscode打开txt文件乱码

金牛大王

于 2021-04-20 09:06:53 发布

版权声明:本文为CSDN博主「金牛大王」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_43401436/article/details/115891481

February the 13th 2023 Monday

### VSCode 中文乱码解决方案 在 Windows 平台下,VSCode 的终端默认使用 GBK 编码,而许多现代开发环境更倾向于 UTF-8 编码。当遇到中文乱码问题时,可以通过调整系统的编码设置以及配置 VSCode 来解决问题。 #### 系统级 UTF-8 支持启用 为了使系统全面支持 UTF-8 编码,在 Windows 设置中勾选 **Beta: 使用 Unicode UTF-8 提供全球语言支持** 后重启计算机[^1]。此选项位于控制面板中的区域设置部分,具体路径为 `控制面板 -> 时钟和区域 -> 区域 -> 高级设置`。 #### VSCode 终端编码设置 打开 VSCode 测试终端编码是否已切换至 UTF-8。如果未自动生效,则可以手动执行命令更改代码页到 UTF-8 (65001)[^2]: ```bash chcp 65001 ``` #### Java 文件运行时的编码指定 对于 Java 开发者来说,若编译或运行过程中出现因编码不匹配引发的乱码错误,需通过修改 settings.json 文件来设定正确的编码参数。例如,将 code-runner 插件用于 Java 执行映射更新为以下内容即可解决该类问题[^4]: ```json { "code-runner.executorMap": { "java": "cd $dir && javac -encoding utf-8 $fileName && java -Dfile.encoding=utf-8 $fileNameWithoutExt" } } ``` #### Python 脚本实现文件批量转码 针对某些特定场景下仍存在乱码的情况,比如已有项目文件采用的是 GBK 编码而非 UTF-8 编码,可利用 Python 脚本来转换这些文件的编码格式。下面提供了一个简单的脚本例子,它能够处理单一目录下的所有 .cfg 文件并将其由 GBK 转换成 UTF-8 编码[^3]: ```python import os def convert_encoding(file_path, from_enc='GBK', to_enc='UTF-8'): with open(file_path, 'r', encoding=from_enc) as f: content = f.read() with open(file_path, 'w', encoding=to_enc) as f: f.write(content) folder_path = './your_folder' # 替换为你实际的目标文件夹路径 for root, dirs, files in os.walk(folder_path): for file_name in files: if file_name.endswith('.cfg'): # 可根据需求替换其他扩展名 full_file_path = os.path.join(root, file_name) try: convert_encoding(full_file_path) print(f'Successfully converted {full_file_path}') except Exception as e: print(f'Failed to convert {full_file_path}: {e}') ``` 以上方法综合应用后应能有效缓解乃至彻底消除 VSCode 下的各种中文显示异常现象。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值