小编典典

在CSV中写入Unicode数据

python

我知道类似的问题已经问过很多次了,但是严重的是我无法正确实现在csv中正确编写的csv编写器(它显示了垃圾)。

我正在尝试使用UnicodeWriter,如官方文档中所述

ff = open('a.csv', 'w')
writer = UnicodeWriter(ff)
st = unicode('Displaygrößen', 'utf-8') #gives (u'Displaygr\xf6\xdfen', 'utf-8')
writer.writerow([st])

这不会给我任何解码或编码错误。但是它写的DisplaygrößenDisplaygrößen哪个不好。有人可以帮我在这里做错什么吗?


阅读 313

收藏
2021-01-20

共1个答案

小编典典

您正在以UTF-8格式写入文件,但未在csv文件中指明该文件。

您应该在文件的开头写入UTF-8标头。添加:

ff = open('a.csv', 'w')
ff.write(codecs.BOM_UTF8)

然后,您的csv文件应在程序尝试读取的情况下正确打开。

2021-01-20