美文网首页
node 将 json 文件转为 csv

node 将 json 文件转为 csv

作者: VioletJack | 来源:发表于2023-03-22 11:44 被阅读0次

今天老婆大人又来需求了,要我把她需要的 JSON 数据用 excel 的形式给她。安排!

const fs = require('fs')

const jsonStr = fs.readFileSync('./a.json', 'utf-8')
const json = JSON.parse(jsonStr)
let str = '\ufeff'
str += '项目名称,'
str += '项目编码,'
str += '办公室名称\n'

for (const key in json) {
  json[key].forEach((item, index) => {
    if (index === 0) {
      str += key
    }
    str += ','
    str += item.projectCode
    str += ','
    str += item.officeName
    str += '\n'
  })
}

fs.writeFileSync('./a.csv', str)

原理很简单,只需要使用 node 的 fs 文件模块。拿到文件 - 解析数据 - 转换数据 - 组成 csv 数据 - 生成 csv 文件。

其中一个知识点是在创建 csv 的时候,需要用 , 英文逗号分隔,而在将字符串一键复制到 csv 的时候,需要用 \t 这个 tab 标识符来分隔。

另外在创建 csv 的时候最好加上 \ufeff 避免乱码。

相关文章

网友评论

      本文标题:node 将 json 文件转为 csv

      本文链接:https://www.haomeiwen.com/subject/txnvrdtx.html