node笔记_读写excel

文章目录

    • ⭐前言
    • ⭐安装依赖
    • ⭐读取excel
      • 💖 按行读取
      • 💖 按列读取
    • ⭐写入excel
    • ⭐结束

⭐前言

大家好,我是yma16,本文分享关于node读取excel内容
往期文章
node_windows环境变量配置
node_npm发布包
linux_配置node
node_nvm安装配置
node笔记_http服务搭建(渲染html、json)
node笔记_读文件
node笔记_写文件
node笔记_连接mysql实现crud
node笔记_formidable实现前后端联调的文件上传
node笔记_koa框架介绍
node_koa路由
node_生成目录

⭐安装依赖

node-xlsx是一个用于在Node.js环境中读写Excel文件的模块。它提供了读取和写入Excel文件的API,支持多种格式,包括xls、xlsx、csv等。使用node-xlsx模块可以方便地处理Excel文件,实现数据的导入和导出,特别适用于数据挖掘、数据分析和报表生成等场景。

安装node-xlsx

$ npm install node-xlsx

⭐读取excel

excel模板
准备excel的表格数据分为4列分别式name、age、sex、location
excel-node
读取excelFile/excel读取模板.xlsx的文件,打印读取的实例

const xlsx =require('node-xlsx');
// 解析excel文件
const workSheetsFromFile=xlsx.parse('./excelFile/excel读取模板.xlsx');console.log('workSheetsFromFile',workSheetsFromFile)

运行结果如下:
read-node
结论:
读取excel内容返回的对象数组

  • name 工作表名称
  • data 工作表内容

💖 按行读取

二维数组遍历excel的内容
代码如下:

const xlsx =require('node-xlsx');const workSheetsFromFile=xlsx.parse('./excelFile/excel读取模板.xlsx');console.log('workSheetsFromFile',workSheetsFromFile)workSheetsFromFile.forEach((item,index)=>{console.log('工作表名称',item.name)console.log('工作表内容',item.data)if(index===0){// 第一个工作表按行读取item.data.forEach(itemData=>{console.log('itemData',itemData)})}
})

运行结果如下:
node-row-res

💖 按列读取

固定列读取行数据

  1. 记录行下标
  2. 固定列按行下标和列下标读取数据
    代码如下:
const xlsx =require('node-xlsx');const workSheetsFromFile=xlsx.parse('./excelFile/excel读取模板.xlsx');console.log('workSheetsFromFile',workSheetsFromFile)workSheetsFromFile.forEach((item,index)=>{console.log('工作表名称',item.name)console.log('工作表内容',item.data)if(index===0){// 记录行下标const rowIndexArray=[]// 按行读取item.data.forEach((itemData,itemDataIndex)=>{// 行号const rowIndex=itemDataIndex// 添加行下标rowIndexArray.push(itemDataIndex)})// 读取某一列的数据 读取第一列const columnIndex=0;rowIndexArray.forEach(rowIndex=>{console.log('读取第一列数据',item.data[rowIndex][columnIndex])})}
})

运行结果如下:
excel-column-read

⭐写入excel

构造工作表数据,写入excel

  • name 工作表名称
  • data 工作表内容
    代码如下:
const xlsx =require('node-xlsx');
const fs=require('fs');const data = [['name', 'type', 'plantform'],['yma16', 'front', 'csdn',]
];
const buffer = xlsx.build([{name: 'mySheetName', data: data}]); // Returns a buffer
console.log('buffer',buffer)fs.writeFile('writeExcel.xlsx',buffer,function(err){if(err){console.log(err)throw err}console.log('写入excel成功!')
})

运行结果如下:
write-node-xlsx
写入的excel如下:
excel-content-write
结论:node-xlsx处理excel的二维数据数据,下标均从0开始。

⭐结束

💖node读写excel分享结束,感谢你的阅读💖
如有不足获取错误欢迎指出!
blue-sky-scene

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/1152.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vivo 自研鲁班分布式 ID 服务实践

作者:vivo IT 平台团队- An Peng 本文介绍了什么是分布式ID,分布式ID的业务场景以及9种分布式ID的实现方式,同时基于vivo内部IT的业务场景,介绍了自研鲁班分布式ID服务的实践。 一、方案背景 1.1 分布式ID应用的场景 随着系统的…

【CV】EfficientNet相比resnet有哪些优点,什么是深度可分离卷积

目录 前言使用深度可分离卷积普通卷积的计算参数量深度可分离卷积分为两个步骤:深度卷积和逐点卷积 使用多个缩放因子使用 Swish 激活函数 前言 高效的神经网络主要通过:1. 减少参数数量;2. 量化参数,减少每个参数占用内存 目前的…

【2023年江西省研究生数学建模竞赛】题目三 植物的多样性 建模方案及参考文献

代码与结果如下:完整文档见文末 相关思路请点击这里到原文章查看 2023年江西省研究生数模竞赛题目三:植物的多样性 植物作为食物链中的生产者,通过光合作用吸收二氧化碳,制造氧气,同时为其他生物提供食物和栖息地&a…

MySQL数据库 – node使用

1 MySQL查询对象 2 MySQL查询数组 3 mysql2库介绍使用 4 mysql2预处理语句 5 mysql2连接池使用 6 mysql2的Promi 这里仅说明如何使用服务器连接数据库并进行操作。 预处理语句就是可以输入变量的语句(表现形式是有符号:?)。需…

spring源码编译笔记

下载源码 地址https://github.com/spring-projects/spring-framework/tree/v5.2.9.RELEASE 查看gradle对应版本 spring-framework-5.2.9.RELEASE/gradle/wrapper/gradle-wrapper.properties # 其他配置暂未了解具体用处,一切默认值 distributionBaseGRADLE_USE…

算法工程师提升工作效率的5个小工具

算法工程师在日常工作中大部分时间还是在和数据打交道。 诸如数据准备,数据清洗,特征分析(EDA) 等等。 这里给大家介绍我非常喜爱的5个处理数据的小工具, 也是我个人使用比较高频的几个工具,相信可以解决大家的一些痛点。 1&#…

企业邮箱如何将一个用户设置到多个部门/群组

1、使用管理员账号postmaster登录企业邮局,点击“邮局管理”。 2、点击“组织与成员”。 3、勾选需要设置的用户,点击“设置所属部门/群”。(例如:我们需要将所属销售分公司的高阳,加入到以下四个分销部中,…

实录分享 | Alluxio Operator一体化部署方案

今天给大家分享的内容是 Alluxio Operator的一体化部署方案。我会将内容分成 4 个部分来给大家讲解。 首先,介绍 Kubernetes 容器化部署和当前所面临的挑战。 然后,引入operator的概念,介绍当前业界关于Kubernetes 容器化部署问题的主流解决…

HTTP超详细教程

1,HTTP协议 1.1,HTTP简述 HTTP全称为超文本传输协议,是一种应用比较广泛的应用层协议。 那何为超文本? 超文本指的是传输的内容不仅仅是文本,比如 html,css,javaScript 等数据,还…

聚观早报|菜鸟推出自营快递菜鸟速递;字节迈出大模型赛道第一步

今日要闻:菜鸟推出自营快递「菜鸟速递」;字节迈出大模型赛道第一步;多所高校宣布将停用微信支付;沃尔沃宣布将接入特斯拉超级充电网络;TikTok将在美推出在线零售商店 菜鸟推出自营快递「菜鸟速递」 6 月 28 日消息&am…

信号链噪声分析3

目录 概要 整体架构流程 技术名词解释 技术细节 3.计算每个信号链模块的等效噪声带宽(ENB) 4.计算各个模块在信 号链输出端的噪声贡献 增益模块 信号滤波器 ADC 驱动放大器电阻 驱动放大器 RC 滤波器 小结 概要 提示:这里可以添加技术概要 本文介绍对高速宽带宽信号…

计算机组成原理(期末或考研备考)-计算机性能指标(字长,主存容量,吞吐量,主频和时钟周期)

字长:字长是指计算机进行一次整数运算所能处理的二进制数据的位数,通常与CPU寄存器大小相同,因为数据进入到CPU之前会放入寄存器中。 主存大小:通常使用字数字长,例如512K*16位就表示共有512K个存储单元,每…