gpt4 book ai didi

python - 将 utf-8 写入 Excel CSV

转载 作者:太空宇宙 更新时间:2023-11-04 08:54:31 32 4
gpt4 key购买 nike

当在 Excel 中打开由 csv 模块使用 utf-8 编码创建的 .csv 文件时,字符已损坏。

如何防止在我的 Excel .csv 文件中发生此错误?

例子

'utf-8'中写入u'\xe9'(即'é')时,Excel显示 'ã©' 就好像它已经对 'latin-1' 编码进行了某种解码:

print u'\xe9' # basic unicode string
é
u'\xe9'.encode('utf-8') #encode to write into .csv as utf-8
'\xc3\xa9'
u'\xe9'.encode('utf-8').decode('latin-1') # Example of incorrect decoding to unicode
u'\xc3\xa9'
print u'\xe9'.encode('utf-8').decode('latin-1') # print statement == Excel's faulty encoding
ã©

最佳答案

当写入 csv 文件对象时,我发现通过在其他任何事情之前写入以下内容强制执行正确的行为:

f.write(u'\ufeff'.encode('utf-8'))

其中 f 是由 with open(filename, 'wb') as f: 指定的文件对象

根据 Mark Ransom上面的注释:BOM 专门告诉 Excel 使用 utf-8 编码

关于python - 将 utf-8 写入 Excel CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31508393/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com