前面有介绍过excel文件转换成json文件的方法,那json文件转excel文件呢?如果json文件里数据格式都是统一的话,那么也比较容易就转。
我们假设json文件中是一个json数组,每条json数据的属性字段都一样,手写一段node.js例程如下:
javascript
//json2excel.js
const xlsx = require("node-xlsx");
const fs = require("fs");
let jsonfile=process.argv.slice(2)[0]
let excelfile=process.argv.slice(2)[1]
console.log("json file is "+jsonfile+" , and excel file is "+excelfile)
var jlist=require(".\\"+jsonfile);
//console.log(jlist);
var xlist=[{
name:"sheet1",
data:[Object.keys(jlist[0])]
}]
jlist.forEach(item=>{xlist[0].data.push(Object.values(item))});
//console.log(xlist);
var excelbuf=xlsx.build(xlist);
fs.writeFileSync(excelfile,excelbuf)
console.log("done!");
在项目文件夹下有待转换json文件,转出的xlsx文件也存放在此,这样就可以执行以下命令转换json文件到excel文件了
bash
node json2excel.js source.json target.xlsx