📜  如何在 Node.js 中读写 Excel 文件?(1)

📅  最后修改于: 2023-12-03 15:38:22.007000             🧑  作者: Mango

如何在 Node.js 中读写 Excel 文件?

在 Node.js 中读写 Excel 文件是一个常见需求,尤其是在处理大量数据时。本文将介绍如何使用第三方模块实现在 Node.js 中读写 Excel 文件。

使用第三方模块

使用 Node.js 原生模块读写 Excel 文件可能会非常复杂和繁琐,但幸运的是,有许多第三方模块可以帮助我们实现这个目标。以下是最常用的三个模块:

  • xlsx:该模块可以读写 Excel、CSV、JSON 和 HTML 文件,非常灵活。
  • exceljs:该模块可以读写 Excel 文件,并支持多种格式,例如 XLSX、XLS、CSV 和 TXT。
  • node-xlsx:该模块可以读写 Excel 和 CSV 文件,支持多重工作表、样式和公式等。

在本文中,我们将使用 xlsx 模块来读写 Excel 文件。

安装 xlsx

在开始之前,首先需要安装 xlsx 模块。在终端中运行以下命令:

npm install --save xlsx
读取 Excel 文件

要读取 Excel 文件,我们需要使用 xlsx 模块的 readFile 方法。该方法接受两个参数:文件路径和一个配置对象。

以下是一个示例代码,该代码将读取名为 data.xlsx 的 Excel 文件,并输出其中第一个工作表的内容:

const xlsx = require('xlsx');

const workbook = xlsx.readFile('data.xlsx');
const sheetName = workbook.SheetNames[0];
const sheet = workbook.Sheets[sheetName];
const data = xlsx.utils.sheet_to_json(sheet);

console.log(data);
写入 Excel 文件

要写入 Excel 文件,我们需要使用 xlsx 模块的 writeFile 方法。该方法接受三个参数:文件路径、工作簿对象和一个配置对象。

以下是一个示例代码,该代码将创建一个新的 Excel 文件 output.xlsx,并将数据写入其中:

const xlsx = require('xlsx');

const data = [
  { name: 'John', age: 30 },
  { name: 'Jane', age: 25 },
  { name: 'Bob', age: 40 },
];

const worksheet = xlsx.utils.json_to_sheet(data);
const workbook = {
  Sheets: { 'data': worksheet },
  SheetNames: ['data'],
};

xlsx.writeFile(workbook, 'output.xlsx');
总结

使用第三方模块 xlsx 可以非常方便地在 Node.js 中读写 Excel 文件。本文介绍了如何安装 xlsx 模块、读取 Excel 文件和写入 Excel 文件的方法。在实际开发中,我们需要根据具体需求灵活使用这些方法,以实现最佳的效果。