目支持寫Excel的node.js模塊:
node-xlsx: 基於Node.js解析excel文件數據及生成excel文件;
excel-parser: 基於Node.js解析excel文件數據,支持xls及xlsx格式文件;
excel-export : 基於Node.js將數據生成導出excel文件,生成文件格式為xlsx;
node-xlrd: 基於node.js從excel文件中提取數據,僅支持xls格式文件。
下面通過node-xlsx模塊來操作Excel文件。
1、安裝node-xlsx模塊
每次npm的時候,走國外的鏡像,非常的慢,甚至安裝失敗,可以配置一下
通過改變默認npm鏡像代理服務,以下三種辦法任意一種都能解決問題,建議使用第三種,將配置寫死,下次用的時候不用重新配置。
通過config命令
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
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,很簡單的。
- npm install -g nodemon
此時就可以用nodemon來代替node命令,執行服務器端js腳本了~