I have a weird question to ask, and i'm having difficulty wrapping my head around it. But basically I have this json string:
{
"001-file":{
"filename":"001 - file",
"slugify":"001-file",
"size":{
"mb":60.4,
"text":"60.4 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder3/"
},
"002-file":{
"filename":"002 - file",
"slugify":"002-file",
"size":{
"mb":60.2,
"text":"60.2 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder3/"
},
"003-file":{
"filename":"003 - file",
"slugify":"003-file",
"size":{
"mb":60.2,
"text":"60.2 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder3/"
},
"004-file":{
"filename":"004 - file",
"slugify":"004-file",
"size":{
"mb":60.2,
"text":"60.2 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder3/"
},
"005-file":{
"filename":"005 - file",
"slugify":"005-file",
"size":{
"mb":60.3,
"text":"60.3 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder4/"
},
"006-file":{
"filename":"006 - file",
"slugify":"006-file",
"size":{
"mb":60.2,
"text":"60.2 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder4/"
},
"007-file":{
"filename":"007 - file",
"slugify":"007-file",
"size":{
"mb":60.2,
"text":"60.2 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder4/"
},
"008-file":{
"filename":"008 - file",
"slugify":"008-file",
"size":{
"mb":60.3,
"text":"60.3 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder4/"
},
"009-file":{
"filename":"009 - file",
"slugify":"009-file",
"size":{
"mb":60.1,
"text":"60.1 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder4/"
},
"010-file":{
"filename":"010 - file",
"slugify":"010-file",
"size":{
"mb":60.1,
"text":"60.1 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder4/"
},
"011-file":{
"filename":"011 - file",
"slugify":"011-file",
"size":{
"mb":60.1,
"text":"60.1 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder5/"
},
"012-file":{
"filename":"012 - file",
"slugify":"012-file",
"size":{
"mb":60.2,
"text":"60.2 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder5/"
},
"013-file":{
"filename":"013 - file",
"slugify":"013-file",
"size":{
"mb":60,
"text":"60.0 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder5/"
},
"014-file":{
"filename":"014 - file",
"slugify":"014-file",
"size":{
"mb":59.7,
"text":"59.7 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder5/"
},
"015-file":{
"filename":"015 - file",
"slugify":"015-file",
"size":{
"mb":59.9,
"text":"59.9 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder5/"
},
"016-file":{
"filename":"016 - file",
"slugify":"016-file",
"size":{
"mb":56.5,
"text":"56.5 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder5/"
},
"017-file":{
"filename":"017 - file",
"slugify":"017-file",
"size":{
"mb":56.3,
"text":"56.3 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder5/"
},
"018-file":{
"filename":"018 - file",
"slugify":"018-file",
"size":{
"mb":56.4,
"text":"56.4 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder6/"
},
"019-file":{
"filename":"019 - file",
"slugify":"019-file",
"size":{
"mb":56.5,
"text":"56.5 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder6/"
},
"020-file":{
"filename":"020 - file",
"slugify":"020-file",
"size":{
"mb":56.5,
"text":"56.5 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder6/"
}
}
And I need to group it based on the directory. Group all E: then group all Folder1 then Folder2 then Folder3 or Folder4 or Folder5
Here is an example of what I'm expecting to get:
{
"E:":{
"Folder1":{
"Folder2":{
"Folder3":{
"001-file":{
"filename":"001 - file",
"slugify":"001-file",
"size":{
"mb":60.4,
"text":"60.4 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder3/"
},
"002-file":{
"filename":"002 - file",
"slugify":"002-file",
"size":{
"mb":60.2,
"text":"60.2 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder3/"
},
"003-file":{
"filename":"003 - file",
"slugify":"003-file",
"size":{
"mb":60.2,
"text":"60.2 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder3/"
},
"004-file":{
"filename":"004 - file",
"slugify":"004-file",
"size":{
"mb":60.2,
"text":"60.2 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder3/"
}
},
"Folder4":{
"005-file":{
"filename":"005 - file",
"slugify":"005-file",
"size":{
"mb":60.3,
"text":"60.3 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder4/"
},
"006-file":{
"filename":"006 - file",
"slugify":"006-file",
"size":{
"mb":60.2,
"text":"60.2 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder4/"
},
"007-file":{
"filename":"007 - file",
"slugify":"007-file",
"size":{
"mb":60.2,
"text":"60.2 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder4/"
},
"008-file":{
"filename":"008 - file",
"slugify":"008-file",
"size":{
"mb":60.3,
"text":"60.3 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder4/"
},
"009-file":{
"filename":"009 - file",
"slugify":"009-file",
"size":{
"mb":60.1,
"text":"60.1 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder4/"
},
"010-file":{
"filename":"010 - file",
"slugify":"010-file",
"size":{
"mb":60.1,
"text":"60.1 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder4/"
}
},
"Folder5":{
"011-file":{
"filename":"011 - file",
"slugify":"011-file",
"size":{
"mb":60.1,
"text":"60.1 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder5/"
},
"012-file":{
"filename":"012 - file",
"slugify":"012-file",
"size":{
"mb":60.2,
"text":"60.2 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder5/"
},
"013-file":{
"filename":"013 - file",
"slugify":"013-file",
"size":{
"mb":60,
"text":"60.0 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder5/"
},
"014-file":{
"filename":"014 - file",
"slugify":"014-file",
"size":{
"mb":59.7,
"text":"59.7 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder5/"
},
"015-file":{
"filename":"015 - file",
"slugify":"015-file",
"size":{
"mb":59.9,
"text":"59.9 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder5/"
},
"016-file":{
"filename":"016 - file",
"slugify":"016-file",
"size":{
"mb":56.5,
"text":"56.5 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder5/"
},
"017-file":{
"filename":"017 - file",
"slugify":"017-file",
"size":{
"mb":56.3,
"text":"56.3 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder5/"
}
},
"Folder6":{
"018-file":{
"filename":"018 - file",
"slugify":"018-file",
"size":{
"mb":56.4,
"text":"56.4 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder6/"
},
"019-file":{
"filename":"019 - file",
"slugify":"019-file",
"size":{
"mb":56.5,
"text":"56.5 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder6/"
},
"020-file":{
"filename":"020 - file",
"slugify":"020-file",
"size":{
"mb":56.5,
"text":"56.5 MB"
},
"directory":"file:///E:/Folder1/Folder2/Folder6/"
}
}
}
}
}
}
Can someone point me in the direction I need to go in order to make this happen?
This is just an example, the real scenario can have different folder structures and about 1000 objects.
Thanks