Here is the format of the JSON output i get
oldJSON = [
{ "Node": "Node1", "NodeParent": "" },
{ "Node": "Node1A", "NodeParent": "Node1" },
{ "Node": "Node1B", "NodeParent": "Node1" },
{ "Node": "Node2", "NodeParent": "" },
{ "Node": "Node2A", "NodeParent": "Node2" },
{ "Node": "Node2B", "NodeParent": "Node2" },
{ "Node": "Node3", "NodeParent": "" },
{ "Node": "Node3A", "NodeParent": "Node3" },
{ "Node": "Node3A1", "NodeParent": "Node3;Node3A" },
{ "Node": "Node3A2", "NodeParent": "Node3;Node3A" },
{ "Node": "Node3A3", "NodeParent": "Node3;Node3A" },
{ "Node": "Node3A1x", "NodeParent": "Node3;Node3A:Node3A1" },
{ "Node": "Node3A1y", "NodeParent": "Node3;Node3A:Node3A1" },
{ "Node": "Node3A1z", "NodeParent": "Node3;Node3A:Node3A1" },
{ "Node": "Node3B", "NodeParent": "Node3" },
{ "Node": "Node3B1", "NodeParent": "Node3;Node3B" },
{ "Node": "Node3B2", "NodeParent": "Node3;Node3B" },
{ "Node": "Node3B3", "NodeParent": "Node3;Node3B" },
{ "Node": "Node3B1x", "NodeParent": "Node3;Node3B:Node3B1" },
{ "Node": "Node3B1y", "NodeParent": "Node3;Node3B:Node3B1" },
{ "Node": "Node3B1z", "NodeParent": "Node3;Node3B:Node3B1" }]
I would like convert this above JSON to tree like structure as shown below.
NewJsonArray = [
{
"Node": "Node1",
"children": [
{
"Node": "Node1A"
},
{
"Node": "Node1B"
}
]
},
{
"Node": "Node2",
"children": [
{
"Node": "Node2A"
},
{
"Node": "Node2B"
}
]
},
{
"Node": "Node3",
"children": [
{
"Node": "Node3A"
},
{
"Node": "Node3B"
}
],
"Node3A": {
"Node": "Node3A",
"children": [
{
"Node": "Node3A1"
},
{
"Node": "Node3A2"
},
{
"Node": "Node3A3"
}
],
"Node3A1": {
"Node": "Node3A1",
"children": [
{
"Node": "Node3A1x"
},
{
"Node": "Node3A1y"
},
{
"Node": "Node3A1z"
}
]
}
},
"Node3B": {
"Node": "Node3B",
"children": [
{
"Node": "Node3B1"
},
{
"Node": "Node3B2"
},
{
"Node": "Node3B3"
}
],
"Node3B1": {
"Node": "Node3B1",
"children": [
{
"Node": "Node3B1x"
},
{
"Node": "Node3B1y"
},
{
"Node": "Node3B1z"
}
]
}
}
}
]
As you can notice the NodeParent is separated by semicolon, the requirement is to split the NodeParent so that the tree like JSON can be generated and pushed under corresponding parent nodes.