【问题标题】:csv to multi level json to create treecsv 到多级 json 以创建树
【发布时间】:2021-06-18 21:17:12
【问题描述】:

我从菜单创建了 csv

Main,Level 1,Level 2 ,Level 3,Level 4 
Forest,,,,
,lvl1link,,,
,,lvl2link,,
,,lvl2link2,,
Cloud,,,,
,clv1,,,
,,clvl2,,
,,clvl22,,
,,,clvl3,
,,,,clvl4
Energy,,,,
,enlvl1,,,
,enlvl11,,,
,,enlvl2,,
,,,enlvl3,
,,,enlvl31,

我从另一个项目导出了 csv,我需要创建子站点并重新创建菜单结构。

如何将其转换为 JSON,其中 Forest lvl1link 的父级,lvl1linklvl2link lvl2link2 的父级等等。

在我看来,这可以通过一些递归函数来完成。

示例步骤

  • 检查具有 Main 元素值的前 2 行的索引并记下它们的索引
  • 现在在查找 col2 中的元素并记下它们的索引时迭代到第二行的索引
  • 通过对返回以下列的其余列重复上述步骤来构建多维数组
array(
  'Forest' => array(
    'lvl1link' => array(
      'lvl2link',
      'lvl2link2'
    )
  ),
  'Cloud' => array(
    'clv1' => array(
      'clvl2',
      'clvl22' => array(
        'clvl3' => array(
          'clvl4'
        )
      )
    )
  ),
  'Energy' => array(
    'enlvl1',
    'enlvl11' => array(
      'enlvl2' => array(
        'enlvl3',
        'enlvl31'
      )
    )
  )
);

我可以使用 php、python 或 javascript。

请指点我正确的方向

【问题讨论】:

  • 如果 MainLevel 4 是键,则它不会正确排列。您使用什么语言? JSON 和 CSV 不是语言。阅读minimal reproducible example 部分

标签: json csv


【解决方案1】:

我不清楚上下文和目标,但是我会将您的 CSV 加载到数据库中,然后执行适当的查询以获得连接的结果。例如,Talisman MPCS 解决方案能够将 csv 加载到支持 In-Memory SQL 的数据存储中,并公开服务以自动生成 JSON 格式的查询结果。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-20
    • 1970-01-01
    • 2012-09-18
    • 2012-10-14
    • 2020-02-24
    • 1970-01-01
    相关资源
    最近更新 更多