【问题标题】:How to convert JSon array to csv?如何将 JSON 数组转换为 csv?
【发布时间】:2017-09-07 22:52:10
【问题描述】:

我有一个 JSON 数组如下:

 [
  {
   city: "c1"
   spots: ["s1","s2"]
   tags:  ["t1","t2"]
  },
  {
   city: "c2"
   spots: ["s3","s2"]
   tags:  ["t1","t2","t4"]
  },
  ....
  ....
 ]

我尝试使用“json2csv”模块将其转换并保存为 csv 文件。但问题是我有两个字段,“spots”和“tags”,是数组。似乎使用“json2csv”,unwindpath 选项只指定 1 列,而不是多列。

有什么模块可以用来完成这项任务吗?

【问题讨论】:

  • 1.那不是 JSON。 2. 即使它开始为 JSON,但在您将其内容转换为 CSV 时它也不会是 JSON。 JSON 是一种用于数据交换的文本表示法(More)。如果您正在处理 JavaScript 源代码,而不是处理 string,那么您就不是在处理 JSON。

标签: json node.js csv


【解决方案1】:

如果你期望这样:

city;spot;tags
c1;s1;t1
c1;s1:t2
c1;s1;t1
c1;s2;t2
c2;s3;t1
c2;s3;t2
c2;s3;t4
c2;s2;t1
c2;s2;t2
c2;s2;t4

创建一个嵌套循环,您可以在其中获取表头数组中的对象键并在最里面的循环中写出数据。

【讨论】:

    【解决方案2】:

    我通过使用具有列过滤选项的“json-csv”模块解决了这个问题。通过分配过滤函数,我将数组转换为单个字符串,例如“s1|s2|s3”。

    【讨论】:

      猜你喜欢
      • 2022-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-05
      • 2019-10-11
      • 2019-11-02
      • 2016-11-09
      • 1970-01-01
      相关资源
      最近更新 更多