目支持寫Excel的node.js模塊:node
node-xlsx: 基於Node.js解析excel文件數據及生成excel文件;npm
excel-parser: 基於Node.js解析excel文件數據,支持xls及xlsx格式文件;服務器
excel-export : 基於Node.js將數據生成導出excel文件,生成文件格式爲xlsx;工具
node-xlrd: 基於node.js從excel文件中提取數據,僅支持xls格式文件。ui
下面經過node-xlsx模塊來操做Excel文件。spa
1、安裝node-xlsx模塊.net
每次npm的時候,走國外的鏡像,很是的慢,甚至安裝失敗,能夠配置一下命令行
經過改變默認npm鏡像代理服務,如下三種辦法任意一種都能解決問題,建議使用第三種,將配置寫死,下次用的時候不用從新配置。代理
經過config命令excel
npm config set registry https://registry.npm.taobao.org
npm info underscore (若是上面配置正確這個命令會有字符串response)
命令行指定
npm --registry https://registry.npm.taobao.org info underscore
編輯 ~/.npmrc 加入下面內容
registry = https://registry.npm.taobao.org
注:有時候執行npm會失敗,提示
Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\node_modules\npm\bin\npm-cli.js'
此時發現node_modules文件夾下npm文件加不存在,常常會出現這樣的狀況,因而我對此文件夾作個備份。
安裝node-xlsx
npm install node-xlsx
安裝成功後,會在node_modules文件夾存在node-xlsx文件夾
2、讀寫xlsx
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
var
xlsx = require(
'node-xlsx'
); var fs = require( 'fs' ); var data = [ { name : 'sheet1' , data : [ [ 'ID' , 'Name' , 'Score' ], [ '1' , 'Michael' , '99' ], [ '2' , 'Jordan' , '98' ] ] }, { name : 'sheet2' , data : [ [ 'AA' , 'BB' ], [ '23' , '24' ] ] } ] // 寫xlsx var buffer = xlsx.build(data); fs.writeFile( './resut.xls' , buffer, function (err) { if (err) throw err; console.log( 'Write to xls has finished' ); // 讀xlsx var obj = xlsx.parse( "./" + "resut.xls" ); console.log(JSON.stringify(obj)); } ); |
注意:文件擴展名能夠是xls,也能夠是xlsx
運行後輸出:
附錄:使用nodemon讓node自動重啓
在咱們開發node項目的時候,修改了服務的代碼,可是node並自動重啓來生效,必須手動去重啓一下,這樣很煩人的啊,很浪費時間,因而就有大神開發了自動重啓的工具——nodemon,很簡單的。
此時就能夠用nodemon來代替node命令,執行服務器端js腳本了~