CNode

请问大家关于使用node-xlsx导出数据出现中文乱码如何解决?

问答
Ddpc761218914发布于9 年前最后回复9 年前9 回复8253 浏览0 收藏

系统:64位WiN10 下面是详细代码:

var xlsx = require('node-xlsx'); var fs = require('fs'); exports.exportExcel= function(req, res) { var data = [[1,2,3],['序号', '设备名称', '序列号', '备注'],['1','服务器','KJKJBN23211212', '这里是备注,这里是备注'], ['1','服务器','KJKJBN23211212', '这里是备注,这里是备注']]; var buffer = xlsx.build([{name: "mySheetName", data: data}]); fs.writeFileSync('b.xlsx', buffer, 'binary'); res.send('export successfully!'); };

查看回复

回复 (9)

1
151263#1·9 年前

ejsExcel 呗, 用模板引擎的方式

G
godghdai#2·9 年前

什么系统,64位win7下测试没乱码

D
dpc761218914#3·9 年前
引用 godghdai什么系统,64位win7下测试没乱码

@godghdai 64位WIN10呢

来自酷炫的 CNodeMD

D
dpc761218914#4·9 年前
引用 151263用 ejsExcel 呗, 用模板引擎的方式

@151263 好像node-xlsx用的人多

F
foora#5·9 年前

fs.writeFileSync(‘b.xlsx’, buffer, ‘binary’); 编码换成utf8

1
151263#6·9 年前
引用 dpc761218914@151263 好像node xlsx用的人多

@dpc761218914 node-xlsx 画非常复杂的Excel格式, VBA, 图表, 固定列 等, 用代码来画这么复杂的Excel几乎就不可能了, 就算用几千行代码画出来也难以修改, 难以扩展 687474703a2f2f646e2d636e6f64652e71626f782e6d652f4672735f52754c584a78595167596f495568474a4a317a7370434a45.png 例如这种格式, 很常见, 左边固定列, 很多复杂的细节设置, 边框, 数据筛选, 合并单元格, 动态Excel公式 等, 甚至: 工作表的只读属性, 隐藏, 工作表之间的链接, 批注, 图形, VBA, 按钮

Z
zxc122333#7·9 年前

检查你js代码文件的编码格式

D
dpc761218914#8·9 年前
引用 zxc122333检查你js代码文件的编码格式

@zxc122333 嗯,谢谢了,我把文件格式GBK换成utf-8就好了。

D
dpc761218914#9·9 年前
引用 foorafs.writeFileSync(‘b.xlsx’, buffer, ‘binary’); 编码换成utf8

@foora 嗯,谢谢了,不过我的问题这样换还是没用,我将js文件从GBK换成utf-8就好了。

参与回复
登录后即可参与回复。登录