nodejs開發記錄之使用ejsExcel讀取excel文件中的數據


這兩天要做一個網站,需要把上傳的excel文件存到mongodb數據庫里面去。網上找了下,發現有個國內大佬開發的node的excel插件——ejsExcel,使用方便,功能豐富,加上是國人開發的,出了問題聯系起來也方便,所以就用ejsExcel吧。附上ejsExcel的地址:https://github.com/sail-sail/ejsExcel

1.建立項目文件夾並加入需要的文件

(1)項目文件夾就叫 EjsExcelTest 吧

2.通過npm 安裝ejsExcel模塊

(1)在項目文件夾下運行CMD。直接在項目目錄的地址欄上輸入cmd就可以在當前文件夾打開cmd窗口了,很方便。

(2)在cmd中,輸入 npm install ejsexcel --save 即可為當前項目引入ejsExcel模塊

(3)新建一個js文件,在里面寫代碼。

我用webstrom建立了main.js文件,在里面完成邏輯代碼。

(4)新建resource目錄,保存待會兒用到的excel文件

新建了一個excel文件,在里面寫好數據,准備在程序中讀取。

這是我創建的excel文件:

2.編寫邏輯代碼

(1)引入ejsExcel和fs模塊

let ejsExcel=require('ejsexcel');
let fs=require('fs');

(2)使用fs將excel文件讀取到buffer中

let exBuf=fs.readFileSync(__dirname+'/resource/test.xlsx');

(3)使用ejsExcel的getExcelArr將buffer讀取為數組

<1>使用getExcelArr函數讀取buffer后,得到的是excel工作表文件

    let workBook=exlJson;

<2>拿到工作表里面的第一個工作簿

    let workSheets=workBook[0];

<3>有了工作簿之后,就可以讀取里面每行數據了。

workSheets.forEach((item,index)=>{
console.log((index+1)+" row:"+item.join(' '));
})

這是打印結果:


3.最后附上所有代碼和我的項目的github地址
(1)main.js文件所有代碼:
let ejsExcel=require('ejsexcel');
let fs=require('fs');

let exBuf=fs.readFileSync(__dirname+'/resource/test.xlsx');
ejsExcel.getExcelArr(exBuf).then(exlJson=>{
console.log("************ read success:getExcelArr");
let workBook=exlJson;
let workSheets=workBook[0];
workSheets.forEach((item,index)=>{
console.log((index+1)+" row:"+item.join(' '));
})
}).catch(error=>{
console.log("************** had error!");
console.log(error);
});
(2)本次deom的 github地址:
https://github.com/qianlizhe/ejsExcelDemo


 

 




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM