最近對接日本的數據源,視圖頁面顯示正常,但是導出結果數據到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打開中文亂碼的情況。
