Python保存CSV文件,Excel打开后中文乱码

情况描述

在做多语言文件处理时, 使用 pandas, 并且指定了encoding为 UTF-8, 在 IDE, Sublime等编辑器上查看都显示正常,使用Excel打开非英文字符, 例如汉字, 阿拉伯文, 希伯来文等显示乱码。

问题起因

Excel 对于非BOM (字节顺序标记)1 保存的CSV文件默认采取ASNI编码 23, pandas 默认的保存方式并没有在文件头加上 (0xEF, 0xBB, 0xBF) or \ufeff 。

解决方案

使用 pandas 保存文件的时候, 指定 encoding 为 utf_8_sig 而不是 utf_8

复制代码
df.to_csv(data_out, index=False ,encoding='utf-8-sig')
相关推荐
2301_79509974几秒前
如何在MongoDB主从架构中利用Change Stream捕获数据变更_必须在副本集模式下工作
jvm·数据库·python
AC赳赳老秦1 分钟前
数据库操作自动化:用 OpenClaw 对接 Navicat/DBeaver,实现数据备份、脱敏、日常操作自动化
java·运维·数据库·python·oracle·自动化·openclaw
程序员小白条1 分钟前
AI 编程辅助,从入门到真香
java·开发语言·数据库·人工智能·面试·职场和发展
ErizJ2 分钟前
Go|腾讯面经总结
开发语言·后端·golang
2401_880071402 分钟前
Django怎么优雅发送邮件_Python配置SMTP后端实现异步通知
jvm·数据库·python
MATLAB代码顾问3 分钟前
差分进化算法(DE)原理与Python实现
开发语言·python·算法
步达硬件3 分钟前
【MATLAB】生成视频code(用于显示器画质测试)
开发语言·matlab·音视频
m0_463672203 分钟前
如何快速检索SQL中的隐藏字符_使用转义与函数处理
jvm·数据库·python
u0110225123 分钟前
怎么优化MongoDB的软删除设计_布尔标记与删除时间戳
jvm·数据库·python
老纪4 分钟前
JavaScript中BigInt与Number类型混用的报错机制
jvm·数据库·python