1. 程式人生 > >node讀寫Excel操作

node讀寫Excel操作

附錄 取數據 blog 代碼 width var uri body rda

目支持寫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

JavaScript Code
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

運行後輸出:

技術分享圖片

附錄:使用nodemonnode自動重啟

在我們開發node項目的時候,修改了服務的代碼,但是node並自動重啟來生效,必須手動去重啟一下,這樣很煩人的啊,很浪費時間,於是就有大神開發了自動重啟的工具——nodemon,很簡單的。

  1. npm install -g nodemon

此時就可以用nodemon來代替node命令,執行服務器端js腳本了~

技術分享圖片

node讀寫Excel操作