Node.js 和 xlsjs 或 exceljs

作者:编程家 分类: excel 时间:2025-08-26

使用Node.js和xlsjs或exceljs生成Excel文件

在日常工作中,我们经常会遇到需要处理Excel文件的需求,比如读取Excel中的数据,或者将数据写入到Excel文件中。在Node.js中,我们可以使用xlsjs或exceljs这两个库来轻松地实现这些功能。

一、使用xlsjs库处理Excel文件

xlsjs是一个基于纯JavaScript的库,可以用于读取和生成Excel文件。它提供了一系列的API,可以方便地操作Excel文件。

1. 安装xlsjs库

首先,我们需要在Node.js项目中安装xlsjs库。可以使用npm命令来安装:

npm install xlsjs

2. 读取Excel文件

接下来,我们可以使用xlsjs库来读取Excel文件中的数据。下面是一个简单的例子,演示了如何读取Excel文件中的数据:

javascript

const xls = require('xlsjs');

const workbook = xls.readFile('data.xlsx');

const sheetNameList = workbook.SheetNames;

const sheetData = xls.utils.sheet_to_json(workbook.Sheets[sheetNameList[0]]);

console.log(sheetData);

在上面的例子中,我们首先使用`readFile`方法读取Excel文件,然后获取Sheet的名称列表,并将第一个Sheet中的数据转换成JSON格式。

3. 生成Excel文件

除了读取Excel文件,我们还可以使用xlsjs库来生成Excel文件。下面是一个简单的例子,演示了如何生成一个包含数据的Excel文件:

javascript

const xls = require('xlsjs');

const workbook = xls.utils.book_new();

const sheetData = [

{ Name: 'John', Age: 25 },

{ Name: 'Mike', Age: 30 },

{ Name: 'Emily', Age: 28 }

];

const worksheet = xls.utils.json_to_sheet(sheetData);

xls.utils.book_append_sheet(workbook, worksheet, 'Sheet1');

xls.writeFile(workbook, 'output.xlsx');

在上面的例子中,我们首先创建一个新的工作簿,然后将数据转换成一个Sheet,并将Sheet添加到工作簿中,最后将工作簿写入到Excel文件中。

二、使用exceljs库处理Excel文件

exceljs是另一个强大的基于Node.js的Excel处理库。它提供了更多的功能和选项,可以满足更复杂的Excel处理需求。

1. 安装exceljs库

首先,我们需要在Node.js项目中安装exceljs库。可以使用npm命令来安装:

npm install exceljs

2. 读取Excel文件

接下来,我们可以使用exceljs库来读取Excel文件中的数据。下面是一个简单的例子,演示了如何读取Excel文件中的数据:

javascript

const ExcelJS = require('exceljs');

const workbook = new ExcelJS.Workbook();

workbook.xlsx.readFile('data.xlsx')

.then(function() {

const worksheet = workbook.getWorksheet(1);

worksheet.eachRow(function(row, rowNumber) {

console.log('Row ' + rowNumber + ' = ' + JSON.stringify(row.values));

});

});

在上面的例子中,我们首先创建一个新的工作簿,然后使用`readFile`方法读取Excel文件,接着获取第一个Sheet,并遍历每一行数据。

3. 生成Excel文件

除了读取Excel文件,我们还可以使用exceljs库来生成Excel文件。下面是一个简单的例子,演示了如何生成一个包含数据的Excel文件:

javascript

const ExcelJS = require('exceljs');

const workbook = new ExcelJS.Workbook();

const worksheet = workbook.addWorksheet('Sheet1');

worksheet.columns = [

{ header: 'Name', key: 'name' },

{ header: 'Age', key: 'age' }

];

worksheet.addRow({ name: 'John', age: 25 });

worksheet.addRow({ name: 'Mike', age: 30 });

worksheet.addRow({ name: 'Emily', age: 28 });

workbook.xlsx.writeFile('output.xlsx');

在上面的例子中,我们首先创建一个新的工作簿,然后添加一个Sheet,并指定每一列的标题和关键字,接着逐行添加数据,最后将工作簿写入到Excel文件中。

通过使用Node.js和xlsjs或exceljs库,我们可以方便地处理Excel文件。无论是读取Excel文件中的数据,还是生成包含数据的Excel文件,这两个库都提供了简单而强大的API,可以满足我们的需求。

希望本文所提供的案例代码能够帮助读者更好地理解和使用Node.js和xlsjs或exceljs库。如果你有任何问题或意见,欢迎在下方留言,我们将尽快回复。