十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章给大家介绍nodejs中怎么解析excel,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
创新互联建站专注于企业营销型网站、网站重做改版、古丈网站定制设计、自适应品牌网站建设、H5响应式网站、商城建设、集团公司官网建设、外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为古丈等各大城市提供网站开发制作服务。
首先用这个包来读取一个excel文件,excel文件内容如下:
内容很简单就是一个表格。
使用node-xlsx的话我们要先安装,并引入。node-xlsx引入到文件中用一个自定义变量来接收,这个变量上有两个方法,parse和build。
parse就是解析excel的意思,我们先看用nodejs解析上面的表格得到数据的代码如下:
var xlsx = require('node-xlsx').default;
// parse方法的参数为要解析的excel的路径
var list = xlsx.parse('./1234.xlsx');
// 输出数据
console.log(list);
打印结果如下:
我们看到这个结果是一个数组,数组的每一项是一个对象,对象中有如下属性:name、data。
name是excel中文档的名称,这里需要注意,一个excel可以有多个文档如图:
所以上面的list得到的是一个数组。
data表示当前文档下的数据,是一个二维数组,我们将其输出:
可以看到和上面表格中的数据是一样的。只不过这个数据的格式比较特殊,通常第一行为标题行,之后的行为实体数据,并以数组的形式存储。
这里需要注意的是如果excel中的表格某个数据为空没有填写如图:
此时读出来的数据如下:
转换成json如下:
这个npm包还是挺人性化的,以上便是用nodejs读取excel文件。
下面来看一下如何用nodejs将数据写入excel,用nodejs将数据写入excel的话,数据必须满足要求才可以,并且这里需要用的nodejs的fs模块。
代码如下:
运行结果会输出到test4.xlsx文件中,结果如下:
从上面的运行结果可以看出,在构建写入的数据的时候,数据必须设置为数组,并且为空的项设置为null,然后按照node-xlsx的接口构建一个buffer数据,最后将buffer数据输出到页面。
拓展一下,下面来看一下下面的表格:
多了一个合并的表头,这样的数据该如何输出呢?代码如下:
关于nodejs中怎么解析excel就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。