jolt转换后json对象的排序
输入:jolt转换后json对象的排序,json,jolt,Json,Jolt,输入: { //The input json object } 所需输出: { "Event1": "Value1", "Event2": [ // collection of json objects ], "Event3": { //The input json object } } 因此,基本上输入json放在
{
//The input json object
}
所需输出:
{
"Event1": "Value1",
"Event2": [
// collection of json objects
],
"Event3": {
//The input json object
}
}
因此,基本上输入json放在另一个json对象包装器的“Event3”中
这是我的规格:
{
//The input json object
}
[
{
“操作”:“移位”,
“规格”:{
@:“事件3”
}
},
{
“操作”:“默认值”,
“规格”:{
“事件1”:“值1”,
“事件2”:[
//一些物体
]
}
}
]
现在的问题是-上面的规范正在进行转换,但对象的顺序混乱,如下所示:
请建议如何解决此问题。您是否尝试过使用排序操作
[
{
“操作”:“排序”,
“规格”:{
"*": ""
}
}
]
我想这可能对你有好处;) 尝试在最后使用另一个
shift
操作,以使它们按所需顺序排列
[
{
"operation": "shift",
"spec": {
"@": "Event3"
}
},
{
"operation": "default",
"spec": {
"Event1": "Value1",
"Event2": [
"ob1", "obj2"
]
}
},
{
"operation": "shift",
"spec": {
"Event1": "Event1",
"Event2": "Event2",
"Event3": "Event3"
}
}
]
添加另一个移位操作,只需将每个字段从输入json复制粘贴到输出json即可。
[
{
“操作”:“移位”,
“规格”:{
@:“事件3”
}
},
{
“操作”:“默认值”,
“规格”:{
“事件1”:“值1”,
“事件2”:[
“ob1”、“obj2”
]
}
},
{
“操作”:“移位”,
“规格”:{
“Event1”:“&”//与“Event1”相同:“Event1”,
“事件2”:“&”,
“事件3”:“和”
}
}
]
谢谢您的回答。不过有一个小问题-排序将按属性名称的字母顺序排列它们;在我的例子中,我使用的名称是-Event1,Event2。。只是为了代表。我的实际json具有不同的属性名称。有没有办法通过指定属性名来设置顺序?我不这么认为。来自jolts git页面:“排序顺序是标准的字母升序”。