简介
本文介绍用 Node.js 中的 js-xlsx
库来处理 Excel 文件。
js-xlsx
库是目前 Github 上 star 数量最多的处理 Excel 的库,功能强大,但上手难度稍大。文档有些乱,不适合快速上手。
本文对 js-xlsx
库进行一定的总结,并提供几个实用的例子供读者测试,学习,交流。
安装
|
一些概念
在使用这个库之前,先介绍库中的一些概念。
-
workbook
对象,指的是整份 Excel 文档。我们在使用js-xlsx
读取 Excel 文档之后就会获得workbook
对象。 -
worksheet
对象,指的是 Excel 文档中的表。我们知道一份 Excel 文档中可以包含很多张表,而每张表对应的就是worksheet
对象。 -
cell
对象,指的就是worksheet
中的单元格,一个单元格就是一个cell
对象。
它们的关系如下:
|
用法
基本用法
- 用
XLSX.readFile
打开 Excel 文件,返回workbook
- 用
workbook.SheetNames
获取表名 - 用
workbook.Sheets[xxx]
通过表名获取表格 - 按自己的需求去处理表格
- 生成新的 Excel 文件
具体用法
读取 Excel 文件
|
获取 Excel 文件中的表
|
通过 worksheet[address]
来操作表格,以 !
开头的 key 是特殊的字段。
|
实战
解析 Excel 生成 JSON
Tips 事实上,你可以直接通过
XLSX.utils.sheet_to_json(worksheet)
获得同样的结果
注意 本例子中假设表的第一行为字段名
|
导出表格
步骤:
- 构建特定的数据结构,如下。
- 调用
XLSX.writeFile(workbook, filename)
即可。
|
|