最近对接日本的数据源,视图页面显示正常,但是导出结果数据到CSV文件会出现乱码,经过查找原因是EXCEL表仅支持带BOM(Byte Order Mark)的表格式,否则出现乱码。

As UTF-8 is an 8-bit encoding no BOM is required and anyU+FEFF character in the decoded Unicode string (even if it’s the firstcharacter) is treated as a ZERO WIDTH NO-BREAK SPACE.

UTF-8以字节为编码单元,它的字节顺序在所有系统中都是一様的,没有字节序的问题,也因此它实际上并不需要BOM(“ByteOrder Mark”)。但是UTF-8 with BOM即utf-8-sig需要提供BOM,找到viz.py里面导出数据函数to_csv方法修改如下。

encoding编码改为“utf-8-sig"或”utf_8_sig"可以修复导出数据excel打开中文乱码的情况。

 

 

posted on 2017-10-31 10:05  就今夜  阅读(3897)  评论(0编辑  收藏  举报