【问题标题】:JOLT - Flattening a simple JSON arrayJOLT - 展平一个简单的 JSON 数组
【发布时间】:2018-08-23 10:42:12
【问题描述】:

我想要这个:

{
  "DATA": [
    {
      "SPEED" : "hi",
      "ANGLE" : "180",
      "GRIT" : "2000"
    },
    {
      "SPEED" : "mid",
      "ANGLE" : "180",
      "GRIT" : "2000"
    },
    {
      "SPEED" : "lo",
      "ANGLE" : "180",
      "GRIT" : "2000"
    }
  ]
}

变成这样:

{
  "SPEED" : "hi",
  "ANGLE" : "180",
  "GRIT" : "2000"
},
{
  "SPEED" : "mid",
  "ANGLE" : "180",
  "GRIT" : "2000"
},
{
  "SPEED" : "lo",
  "ANGLE" : "180",
  "GRIT" : "2000"
}

但是有了这个:

[
  {
    "operation": "shift",
    "spec": {
      "DATA": {
        "*": {
          "*": "&"
        }
      }
    }
}
]

我明白了:

{
  "SPEED" : [ "hi", "mid", "lo" ],
  "ANGLE" : [ "180", "180", "180" ],
  "GRIT" : [ "2000", "2000", "2000" ]
}

我是 JOLT 的新手,因为找不到任何文档,所以我来找您寻求帮助。 Stackoverflow 不允许我发布这个问题,因为它主要包含代码,但这在于这个问题的本质,即描述我有什么输入,我想要它是什么以及我尝试过什么。

编辑:

@Pratik Jaiswal

感谢您的回答,但看起来我可以这样做

[
  {
    "operation": "shift",
    "spec": {
      "DATA": {
        "*": {
          "@": ""
        }
      }
    }
}
]

不过,这不会删除外部括号。使用 JOLT 是否也能做到这一点?还是我只需要以其他方式摆脱它们?

【问题讨论】:

    标签: json jolt


    【解决方案1】:
    [
      {
    "operation": "shift",
    "spec": {
      "DATA": {
        "*": {
          "SPEED": "[&1].SPEED",
          "ANGLE": "[&1].ANGLE",
          "GRIT": "[&1].GRIT"
        }
      }
    }
    }
    ]
    

    在这里测试规范http://jolt-demo.appspot.com/#inception

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-09
      • 1970-01-01
      • 1970-01-01
      • 2013-02-03
      • 2021-10-24
      相关资源
      最近更新 更多