当前位置: 首页 > 知识库问答 >
问题:

嵌套JSON对象数组的Jolt转换

鲁烨
2023-03-14

我只想扁平化嵌套JSON的属性,但仍然适用于输入数组中的所有对象

很难将这三个字段放在一个规范中(类型字段、geo字段、properties字段)。我编写了规范来单独完成每一个操作,但是当我将这些规范组合在一个对象中使用时,它会产生错误的输出--对象数组真的把它搞砸了。

[
  {
    "type": "Feature",
    "geometry": {
      "type": "MultiLineString",
      "coordinates": [
        [
          [
            -11.11,
            11.11
          ]
        ]
      ]
    },
    "properties": {
      "tester_email": "tester123@123.com",
      "phase_test": "Test 1"
    }
  },
  {
    "type": "Feature22222",
    "geometry": {
      "type": "MultiLineString",
      "coordinates": [
        [
          [
            -11.11,
            11.11
          ]
        ]
      ]
    },
    "properties": {
      "tester_email": "tester123@123.com",
      "phase_test": "Test 1"
    }
  }
]
[{
    "operation": "shift",
    "spec": {
      "*": {
        "type": "[&1].type",
        "geometry": "[&1].geometry",
        "properties": "[&1]"
      }
    }
  }
]

[ [ {
  "type" : "Feature",
  "geometry" : {
    "type" : "MultiLineString",
    "coordinates" : [ [ [ -11.11, 11.11 ] ] ]
  }
}, {
  "tester_email" : "tester123@123.com",
  "phase_test" : "Test 1"
} ], [ {
  "type" : "Feature22222",
  "geometry" : {
    "type" : "MultiLineString",
    "coordinates" : [ [ [ -11.11, 11.11 ] ] ]
  }
}, {
  "tester_email" : "tester123@123.com",
  "phase_test" : "Test 1"
} ] ]

期望输出:

[ {
"type" : "Feature",
"geometry" : {
  "type" : "MultiLineString",
  "coordinates" : [ [ [ -11.11, 11.11 ] ] ]
},
"tester_email" : "tester123@123.com",
"phase_test" : "Test 1"
},{
"type" : "Feature22222",
"geometry" : {
  "type" : "MultiLineString",
  "coordinates" : [ [ [ -11.11, 11.11 ] ] ]
},
"tester_email" : "tester123@123.com",
"phase_test" : "Test 1"
} ]

共有1个答案

洪弘壮
2023-03-14

这起作用了:

[
  {
    "operation": "remove",
    "spec": {
      "*": {
        "properties": {
          "type": ""
        }
      }
    }
  },
  {
    "operation": "shift",
    "spec": {
      "*": {
        "*": "[&1].&",
        "properties": {
          "*": "[&2].&"
        }
      }
    }
  }
]
 类似资料:
  • 我有一个嵌套的JSON对象,如下所示: 我想将其转换为: 我如何使用JOLT实现这一点?感谢您的参与。

  • 我有json,其中包括多个产品,每个产品有多个不同的细节。使用jolt,我只需要输入json中的几个字段,遵循与输入json几乎相同的结构。我成功地迭代了产品,但是当我试图迭代每个产品变体时,我没有得到想要的输出。 输入. json 这里是Spec.json 我想要的预期输出。 我现在得到的实际输出。

  • 如何使用jolt转换将平面JSON转换为嵌套JSON?我对JSON和jolt是新手。 输入: 预期输出: 编辑:我想在< code>SubFunds中添加一个新字段,但是新字段不在JSON文件中,它是计算字段,我可以按原样添加示例吗 并重命名字段:

  • 我正在尝试编写一个规范来使用jolt转换进行以下转换。我只对更改json中键的名称感兴趣,值应该保持不变。帮帮我。 输入Json: 预期输出:

  • 我有一个JSON如下所示: 为什么在输出中看不到Level1、Level2?请有人帮忙,我想看看在输出和输入太相似了。

  • 我是JOLT转换的新手,我发现它在JSON转换中非常有用。但是当我遇到嵌套且复杂的JSON时,我感到困惑。 下面的JSON是一个嵌套且复杂的JsonArray,我需要将其转换为完全扁平的JsonArray。 JSON输入: 如您所见,我们有一个空的对象“字母类型”:[],但在其他Json对象中,“字母类型”有自己的对象并且不是空的。 下面的JSON是我的预期输出。 预期输出: 我需要的是一个JOL