本文使用node.js实现将json数据转换导出为excel文件。
一、安装json2xls
库
npm i json2xls
二、封装转换方法
新增jsonToExcel.js
文件,该文件用于将json数据(对象数组)转换为excel文件,文件内容如下:
const fs = require('fs') // 引入文件系统模块
const json2xls = require('json2xls'); // 引入json2xls模块
/**
* 下载excel
* @param {*} jsonData json数据(对象数组),格式为[{object},{object},{object}]
*/
function downLoadExcle(jsonData) {
const jsonArray = []; // 定义一个空数组
jsonData.forEach((item) => { // 遍历json数据
jsonArray.push({
"测试机ID": item.ident,
"测试状态": item.data.status,
"响应延迟时间":item.data.duration,
"测试响应状态码":item.data.code,
"测试时间":item.data.time
})
})
let xls = json2xls(jsonArray); // json2xls方法将json对象转换为excel文件
fs.writeFileSync('./test_result.xlsx', xls, 'binary'); // 将excel文件写入到本地
}
module.exports = {
downLoadExcle
}
三、使用示例
// index.js
const { downLoadExcle } = require('./jsonToExcel') //引入封装方法
// json模拟数据
let jsonExamData =[
{
"type": 200,
"ident": "e5ffba64-27b9-4cde-8b8c-7085b5bcb3fe",
"data": {
"status": 200,
"message": "success",
"taskType": "runTask1",
"code": 200,
"time": "08-29 17:17:48:460",
"duration": 99
}
},
{
"type": 200,
"ident": "e5ffba64-27b9-4cde-8b8c-7085b5bcb3fe",
"data": {
"status": 200,
"message": "success",
"taskType": "runTask1",
"code": 200,
"time": "08-29 17:17:48:828",
"duration": 78
}
}
] //模拟数据
// 使用封装方法转换json为excel并写入到本地
downLoadExcle(jsonExamData)
标签:200,json2xls,nodejs,excel,item,json,data
From: https://www.cnblogs.com/bokemoqi/p/18389158