前言:由于最近都在搞大屏的项目,要到的数据都是excel 表格的站点数据(一般就经纬度,加个站号、名称之类的),之前纯纯手撸,没啥因为数量少,10来个,这次看了眼,50几个,看来手撸已不可取。为此找了下处理excel的插件,由此记录。
安装
npm install exceljs --save
使用示例
下面代码做了如下事:
1、读取当前目录路径下的test.xlsx文件
2、读取第一张工作表
3、遍历第一张工作表的每一行
4、对每一行的列的文本分别做处理,同时保存在arr 数组里
5、将arr 转换成JSON字符串 写入到output.json的文件内容去。
const EXCELJS = require('exceljs');
const fs = require('fs')
const WORKBOOK = new EXCELJS.Workbook();
async function readExcel(filePath) {
await WORKBOOK.xlsx.readFile(filePath);
const SHEET = WORKBOOK.worksheets[0];
let arr = []
SHEET.eachRow((row, rowNumber) => {
let obj = {
id: row.getCell(1).text,
name: row.getCell(3).text,
lon: Number(row.getCell(5).text),
lat: Number(row.getCell(4).text),
height: Number(row.getCell(6).text)
}
arr.push(obj)
});
fs.writeFile('output.json',JSON.stringify(arr),()=>{
console.log('write');
})
}
readExcel('./test.xlsx');