有谁能够使用python的xlwt写出UTF-8字符?

有谁能够使用python的xlwt写出UTF-8字符?,第1张

有谁能够使用python的xlwt写出UTF-8字符?

在Excel 97-2003
XLS文件中,

latin1
如果可能的话,将对每段文本进行编码,否则
UTF-16LE
使用标记来显示。为此,xlwt需要一个
unipre
对象。如果调用者提供了一个
str
对象,则xlwt将尝试使用Workbook()调用中指定的编码对它进行解码(默认为
ascii
)。

这有效;尝试运行以下简短脚本,然后使用Excel打开生成的文件。

import xlwtwb = xlwt.Workbook(encoding="UTF-8")uc = u"".join(unichr(0x0410 + i) for i in xrange(32)) # some Cyrillic charactersu8 = uc.enpre("UTF-8")ws = wb.add_sheet("demo")ws.write(0, 0, uc)ws.write(1, 0, u8)ws.write(2, 0, xlwt.Formula("A1=A2"))ws.write(3, 0, "ASCII is a subset of UTF-8")wb.save("xlwt_write_utf8.xls")

您得到编码错误而不是解码错误的事实表明脚本的文件输入部分可能存在问题。请提供最短的脚本,该脚本会导致您遇到错误。该脚本应该

printrepr(your_utf8_text)
在失败语句之前包含类似内容,以便我们可以准确地看到文本数据是什么。请提供完整的错误消息和完整的追溯,以及
printrepr(contents)
非常简短的输入文件的内容()。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5655069.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存