使用 xlwt 生成的 excel 文件单元格的中文是乱码
系统是 Mac, 用的是 Office 2011,python 安装了 xlwt
代码如下:
#!/usr/bin/env python # -*- coding: utf-8 -*- import xlwt file = xlwt.Workbook(encoding = 'utf-8') table = file.add_sheet('hello', cell_overwrite_ok = True) table.write(1, 1, '测试') file.save('demo.xls')
数据写入到 demo.xls 文件中,打开该文件后,单元格的内容都是乱码,但鼠标点击该单元格,在上方的公式栏(fx)里显示又是正常的(如下图),若将本文件在 windows 里打开,中文又能正常显示,请问这是什么原因呢?该如何解决?
解决方法
根据 @fen 的思路,加了下面的代码解决了:
style = xlwt.XFStyle() font = xlwt.Font() font.name = 'SimSun' # 指定“宋体” style.font = font table.write(1, 1, '测试', style) # 使用 style
luck超人
10 years, 6 months ago