节点exceljs读取文件

所以根据官方文档,我应该能够阅读一个Excel文档,使用:

// read from a file var workbook = new Excel.Workbook(); workbook.xlsx.readFile(filename) .then(function() { // use workbook }); // pipe from stream var workbook = new Excel.Workbook(); stream.pipe(workbook.xlsx.createInputStream()); 

我有以下文件:

在这里输入图像描述

我需要做的是基本上加载到一个对象的每一行:

 var excelObject = {competence1: '', competence2: ''} 

然后将其保存到一个数组中。

但是,文档没有给我更多关于如何从这个文件中读取。 它使用一个称为stream的variables,但是这个variables在任何地方都没有解释

有谁知道这个插件,知道我可以如何实现我的目标?

       

网上收集的解决方案 "节点exceljs读取文件"

 var workbook = new Excel.Workbook(); workbook.xlsx.readFile(filename) .then(function() { var worksheet = workbook.getWorksheet(sheet); worksheet.eachRow({ includeEmpty: true }, function(row, rowNumber) { console.log("Row " + rowNumber + " = " + JSON.stringify(row.values)); }); }); 

如果你使用的文件是ArrayBuffer(例如FileReader.readAsArrayBuffer()在客户端上读取文件),那么要使用这个lib加载文件,你必须做下一个:

  let workbook = new Excel.Workbook(); let stream = new Stream.Readable(); stream.push(file); // file is ArrayBuffer variable stream.push(null); workbook.xlsx.read(stream).then((workbook)=> { // get worksheet, read rows, etc });