Node读写Excel操作实例分析
本攻略介绍如何利用Node.js进行Excel文件的读写操作,主要包括以下内容:
- Excel文件的读取;
- Excel文件的写入;
- Excel文件的修改。
Excel文件的读取
安装依赖
使用Node.js进行Excel文件的读取,需要安装如下依赖:
npm install xlsx --save
基本使用
使用xlsx
模块读取Excel文件的基本步骤如下:
const xlsx = require('xlsx');
const workbook = xlsx.readFile('file.xlsx');
const sheet_name_list = workbook.SheetNames;
const data = xlsx.utils.sheet_to_json(workbook.Sheets[sheet_name_list[0]])
console.log(data);
以上代码中,xlsx.readFile
方法读取Excel文件,并返回一个workbook
对象;workbook.SheetNames
属性获取Excel文件中的所有sheet名;xlsx.utils.sheet_to_json
方法将指定的sheet数据转化为json格式的数据。
实例说明
以下代码实现了读取Excel文件test.xlsx
中第一个sheet的所有行数据的功能:
const xlsx = require('xlsx');
const path = require('path');
const filePath = path.join(__dirname, 'test.xlsx');
const workbook = xlsx.readFile(filePath);
const data = xlsx.utils.sheet_to_json(workbook.Sheets[workbook.SheetNames[0]]);
console.log(data);
Excel文件的写入
基本使用
使用xlsx
模块写入Excel文件的基本步骤如下:
const xlsx = require('xlsx');
const worksheet = xlsx.utils.json_to_sheet([
{"姓名": "张三", "年龄": "25", "性别": "男"},
{"姓名": "李四", "年龄": "30", "性别": "女"},
]);
const workbook = xlsx.utils.book_new();
xlsx.utils.book_append_sheet(workbook, worksheet, "Sheet1");
xlsx.writeFile(workbook, 'file.xlsx');
以上代码中,xlsx.utils.json_to_sheet
方法将json格式的数据转化为sheet;xlsx.utils.book_new
方法生成一个新的workbook对象,xlsx.utils.book_append_sheet
方法将生成的sheet添加到workbook中;xlsx.writeFile
方法将workbook写入到Excel文件中。
实例说明
以下代码实现了将一个json数组写入到Excel文件test.xlsx
中第一个sheet中的功能:
const xlsx = require('xlsx');
const path = require('path');
const filePath = path.join(__dirname, 'test.xlsx');
const workbook = xlsx.utils.book_new();
const worksheet = xlsx.utils.json_to_sheet([
{"姓名": "张三", "年龄": "25", "性别": "男"},
{"姓名": "李四", "年龄": "30", "性别": "女"},
]);
xlsx.utils.book_append_sheet(workbook, worksheet, 'Sheet1');
xlsx.writeFile(workbook, filePath);
Excel文件的修改
基本使用
使用xlsx
模块修改Excel文件的基本步骤如下:
const xlsx = require('xlsx');
const workbook = xlsx.readFile('file.xlsx');
const worksheet = workbook.Sheets[workbook.SheetNames[0]];
worksheet['A1'].v = 100;
xlsx.writeFile(workbook, 'file.xlsx');
以上代码中,xlsx.readFile
方法读取Excel文件并返回一个workbook
对象,workbook.Sheets[workbook.SheetNames[0]]
获取第一个sheet的数据;worksheet['A1'].v = 100
修改A1单元格的值;最后使用xlsx.writeFile
方法将修改后的workbook对象写入到Excel文件中。
实例说明
以下代码实现了将Excel文件test.xlsx
中第一个sheet的A1单元格的值修改为100的功能:
const xlsx = require('xlsx');
const path = require('path');
const filePath = path.join(__dirname, 'test.xlsx');
const workbook = xlsx.readFile(filePath);
const worksheet = workbook.Sheets[workbook.SheetNames[0]];
worksheet['A1'].v = 100;
xlsx.writeFile(workbook, filePath);
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:node读写Excel操作实例分析 - Python技术站