nodejs把xls读取为json文件(node-xlsx示例)

该文章展示了一个使用node-xlsx库解析Excel文件并用nodejs的fs模块写入JSON的示例。它首先读取Excel文件,然后对数据进行处理,按特定字段归类,最后将处理后的数据写入本地JSON文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需要用到node包node-xlsx 和nodejs的fs文件服务器读写功能

github示例demo xlsTojson


var xlsx = require("node-xlsx");
var fs = require('fs');
var list = xlsx.parse("demo.xlsx"); // 解析转换的excel文件


var data = list[0].data;  // 1.读取json数据到变量暂存

var len = data.length;
var initData = []

// 2.数据处理

// 自定义数据处理start
//  本示例已industryCategory字段等价表格服务类别列生成归类的json,此处自定义处理逻辑
for (var i = 0; i < len; i++) {
  if (i < len - 1) {
    var item = data[i + 1];
    initData.push({
      "industryCategory": item[7],
      "name": item[1],
      "investment": item[3] + '亿元',
      "investmentComplete": item[4] + '亿元',
      "startTime": item[5],
      "taxStatisticsTime": item[6],
      "liabilityNuit": item[8],
      "address": item[7]
    })
  }
}
var classify = {}
initData.forEach(item => {
  // 遍历种类 classify 存储种类对象
  let { industryCategory, ...next } = item
  if (classify[item.industryCategory]) {
    // 第n个
    classify[item.industryCategory].push(next)
  } else {
    // 第一个
    classify[item.industryCategory] = [next]
  }
})
let outData = []
for (var key in classify) {
  outData.push({
    industryCategory: key,
    detail: classify[key]
  })
}
// 自定义数据处理end

3.数据写入本地json文件
// JSON.stringify(outData,null,4) 格式化的json数据 
writeFile("demo.json", JSON.stringify(outData, null, 4)); // 输出的json文件 
function writeFile(fileName, data) {
  fs.writeFile(fileName, data, 'utf-8', complete);  // 文件编码格式 utf-8
  function complete(err) {
    if (!err) {
      console.log("文件生成成功");  
    }
  }
}```

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值