gpt4 book ai didi

json - node.js:将 json 数组转换为 csv

转载 作者:太空宇宙 更新时间:2023-11-03 22:46:57 24 4
gpt4 key购买 nike

我想将 json 元素数组转换为 node.js 中的 csv。我发现一些模块可以执行类似 json2csv 或 json-csv 的操作,但它们并不完整。例如,json2csv 仅支持平面结构,其中字段是 json 根的直接子级,并且所有 json 对象的架构应该相同。
就我而言,我想要这样。
我想我有一个像这样的 json 对象数组:

[{    "libelle" : "Projet 1",    "beneficiaire" : "Mr Leroy",    "nature" : "Diagnostics patrimoniaux",    "phasage" : "GLOBAL",    "budget": [        {"status": "BROUILLON"}    ],    "status" : "BROUILLON"},{    "libelle" : "Projet 2",    "beneficiaire" : "Mr Leroy",    "nature" : "Diagnostics patrimoniaux",    "phasage" : "GLOBAL",    "status" : "BROUILLON"}]

我想将其转换为 csv,如下所示:

"libelle","beneficiaire","nature","phasage","budget[0].status","status""Projet 1","Mr Leroy","Diagnostics patrimoniaux","GLOBAL","BROUILLON","BROUILLON""Projet 2","Mr Leroy","Diagnostics patrimoniaux","GLOBAL",,"BROUILLON"

我正在寻找一个好的、完整的 Node 模块来做到这一点。如果不存在,我想我会自己做。

最佳答案

您可以使用模块jsonexport,它非常简单,请检查此示例:

示例:

var jsonexport = require('jsonexport');

var contacts = [{
name: 'Bob',
lastname: 'Smith',
family: {
name: 'Peter',
type: 'Father'
}
},{
name: 'James',
lastname: 'David',
family:{
name: 'Julie',
type: 'Mother'
}
},{
name: 'Robert',
lastname: 'Miller',
family: null,
location: [1231,3214,4214]
},{
name: 'David',
lastname: 'Martin',
nickname: 'dmartin'
}];

jsonexport(contacts,function(err, csv){
if(err) return console.log(err);
console.log(csv);
});

输出:

lastname;name;family.type;family.name;nickname;location
Smith;Bob;Father;Peter;;
David;James;Mother;Julie;;
Miller;Robert;;;;1231,3214,4214
Martin;David;;;dmartin;

来源:https://www.npmjs.com/package/jsonexport

关于json - node.js:将 json 数组转换为 csv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27817645/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com