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_生成目录

⭐安装依赖

$ npm install node-xlsx

⭐读取excel

excel模板
node笔记_读写excel_第1张图片
读取excel内容

  • name 工作表名称
  • data 工作表内容
const xlsx =require('node-xlsx');
// 解析excel文件
const workSheetsFromFile=xlsx.parse('./excelFile/excel读取模板.xlsx');

console.log('workSheetsFromFile',workSheetsFromFile)

运行结果如下:
node笔记_读写excel_第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){
		// 第一个工作表按行读取
		item.data.forEach(itemData=>{
			console.log('itemData',itemData)
		})
	}
})

运行结果如下:
node笔记_读写excel_第3张图片

按列读取

固定列读取行数据

  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])
		})
	}
})

运行结果如下:
node笔记_读写excel_第4张图片

⭐写入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成功!')
})

运行结果如下:
node笔记_读写excel_第5张图片
写入的excel如下:
node笔记_读写excel_第6张图片

⭐结束

node读写excel分享结束,感谢你的阅读
如有不足获取错误欢迎指出!
node笔记_读写excel_第7张图片

你可能感兴趣的:(node专栏,excel,node.js)