我有一个JSON,它包含两个数组,我需要将它们转换为键/值对。数组上的这些键是动态的,可以更改。
为此,我尝试创建一个Jolt规范,将我的输入数据转换为以下格式。
JSON输入:
{
"data": [
{
"property1": "AA",
"property2": "BB",
"keys": [
"key1",
"key2",
"key3"
],
"values": [
"value1",
"value2",
"value3"
]
},
{
"property1": "CC",
"property2": "DD",
"keys": [
"key4",
"key5"
],
"values": [
"value4",
"value5"
]
}
]
}
期望输出:
[
{
"property1": "AA",
"property2": "BB",
"key1": "value1",
"key2": "value2",
"key3": "value3"
},
{
"property1": "CC",
"property2": "DD",
"key4": "value4",
"key5": "value5"
}
]
我的规格:
[
{
"operation": "shift",
"spec": {
"data": {
"*": {
"values": {
"*": {
"@": "[&3].@(3,keys[&1])"
}
}
}
}
}
}
]
我的规格输出:
json prettyprint-override">[
{
"key1": "value1",
"key2": "value2",
"key3": "value3"
},
{
"key4": "value4",
"key5": "value5"
}
]
但是我不能正确地在所需的输出中包含简单的属性(属性1和属性2)。
提前致谢
[
{
"operation": "shift",
"spec": {
"data": {
"*": {
"property1": "[&1].property1",
"property2": "[&1].property2",
"values": {
"*": {
"@": "[&3].@(3,keys[&1])"
}
}
}
}
}
}
]
实际上,您已经将动态元素很好地分组到了键-值对中,但是您错过了property1和property2字段到输出中的位置映射。
如何在Jolt转换JSON数组中保留其他字段,我正在尝试使用通配符,但在最终输出中没有添加字段? 这是我正在使用的输入示例 我使用了下面的Jolt转换,并尝试了通配符: 下面是我的预期输出,其中发生了移位操作,然后需要保持所有其他字段不变 即将到来的实际输出:
我必须将 JSON 输入转换为包含一个对象的数组。 我有这个 JOLT 配置: 以下是我的意见: 实际产量: 期望的输出: 你知道该怎么做吗? 谢谢你们的帮助
我正在尝试编写一个规范来使用jolt转换进行以下转换。我需要通过保持空值将平面JSON转换为嵌套JSON。我附加了输入、预期输出和jolt转换。我需要在输出中保留空值,但在jolt转换后不会显示在输出中。我的jolt转换没有得到确切的输出。 我在将平面JSON转换为嵌套JSON时遇到了一些问题。我看了一些例子,但没有更进一步了解上面提到的内容。我需要通过使用JOLT规范来转换JSON结构。我用ht
我需要使用jolt spec在JSON中将(多个)键转换为值,将值转换为键。做这件事的正确规范应该是什么? 输入: 所需输出:
编辑:键名称是动态的和未知的。 我想获取一个对象,并创建一个字符串数组,将每个键和值连接在一起。 我的键包含下划线,我需要摆脱(我有这部分工作)。我正在努力弄清楚下一步将所有内容连接在一起。(我想我错过了如何从RHS引用键和值?) 输入: 期望输出: 规格: 电流规格输出:
因为匹配器“*”丢弃简单键值对。我知道我错过了什么。有人帮忙吗?