使用node读写Excel文件

这篇博客介绍了如何在Node.js环境中利用node-xlsx和excel-export模块进行Excel文件的读取和导出操作。通过示例代码展示了读取Excel数据并生成新的Excel文件的过程,强调了这两个库的特点和适用场景,例如node-xlsx支持xlsx格式的读取,而excel-export则方便数据导出,支持设置单元格宽度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

node操作Excel的例子

# 安装依赖

npm install一下以下模块

  • node-xlsx(基于Node.js解析excel文件数据及生成excel文件,仅支持xlsx格式文件)
  • excel-export(基于Node.js将数据生成导出excel文件,生成文件格式为xlsx)
  • fs

# 示例代码

demo.js

const fs = require('fs')
const xlsx = require('node-xlsx')
const nodeExcel = require('excel-export')

// 读取Excel
let exceldata = xlsx.parse('./' + 'xxx.xlsx')
let exportData = []
for (let rowId in exceldata[0]['data']) {
    let row = exceldata[0]['data'][rowId]
    exportData.push(row[0])
}

// 导出Excel
let conf = {} // excel配置
conf.name = 'sheet' //表格名
// 列名和类型
conf.cols = [
    {
        caption: '列名',
        type: 'string',
    },
]

let excelData = new Array()
for (var i = 0; i < exportData.length; i++) {
    let arr = new Array()
    arr.push(exportData[i])
    excelData.push(arr)
}
conf.rows = excelData
let result = nodeExcel.execute(conf)
let path = `${__dirname}/exportdata.xlsx`
fs.writeFile(path, result, 'binary', (err) => {
    err ? console.log(err) : null
})

# 常见的npm依赖模块参考

  • js-xlsx : 目前 Github 上 star 数量最多的处理 Excel 的库,支持解析多种格式表格XLSX / XLSM / XLSB / XLS / CSV,解析采用纯js实现,写入需要依赖nodejs或者FileSaver.js 实现生成写入Excel,可以生成子表Excel,功能强大,但上手难度稍大。不提供基础设置Excel表格api例单元格宽度,文档有些乱,不适合快速上手;
  • node-xlsx : 基于Node.js解析excel文件数据及生成excel文件,仅支持xlsx格式文件;
  • excel-parser : 基于Node.js解析excel文件数据,支持xls及xlsx格式文件,需要依赖python,太重不太实用;
  • excel-export : 基于Node.js将数据生成导出excel文件,生成文件格式为xlsx,可以设置单元格宽度,API容易上手,无法生成worksheet字表,比较单一,基本功能可以基本满足;
  • node-xlrd : 基于node.js从excel文件中提取数据,仅支持xls格式文件,不支持xlsx,有点过时,常用的都是XLSX 格式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

薛定喵君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值