精易论坛

标题: json列表转到树形数据 [打印本页]

作者: 银河世纪    时间: 2024-3-25 17:59
标题: json列表转到树形数据
原始数据:
  
[{"a":"ROOT","b":"316","c":"a0"},{"a":"316","b":"JYPT999.221209518016.0","c":"a1"},{"a":"JYPT999.221209518016.0","b":"JYPT999.221209518016.1","c":"a2"},{"a":"JYPT999.221209518016.1","b":"prod.10086000048093","c":"a3"},{"a":"JYPT999.221209518016.0","b":"prod.10086000053018","c":"a4"},{"a":"361","b":"prod.10086000053018","c":"a5"}]

需要转成:
  
[{"a":"ROOT","b":"316","c":"a0","d":[{"a":"316","b":"JYPT999.221209518016.0","c":"a1","d":[{"a":"JYPT999.221209518016.0","b":"JYPT999.221209518016.1","c":"a2","d":[{"a":"JYPT999.221209518016.1","b":"prod.10086000048093","c":"a3"}]},{"a":"JYPT999.221209518016.0","b":"prod.10086000053018","c":"a4"}]},{"a":"361","b":"prod.10086000053018","c":"a5"}]}]

a是父ID b是子ID
最好用易语言写

作者: Wod    时间: 2024-3-25 18:00
你这是直接要源码来的,再说了。json解析到树形开源的一大堆,你也不自己去搜一下。
作者: emodiyu    时间: 2024-3-25 18:07
你这是直接要源码来的,再说了。json解析到树形开源的一大堆,你也不自己去搜一下。
作者: zz1318    时间: 2024-3-25 18:08
不会搜索没关系 我帮你搜了 https://125.confly.eu.org/forum.php?mod ... 0%E6%A0%91%E5%BD%A2

作者: 银河世纪    时间: 2024-3-25 18:10
zz1318 发表于 2024-3-25 18:08
不会搜索没关系 我帮你搜了 https://125.confly.eu.org/forum.php?mod=viewthread&tid=14101044&highlight=json%E8 ...

真不好意思啊  ,我这个需要先转
作者: 银河世纪    时间: 2024-3-25 18:11
Wod 发表于 2024-3-25 18:00
你这是直接要源码来的,再说了。json解析到树形开源的一大堆,你也不自己去搜一下。 ...

那些都只是json直接到树的
作者: 银河世纪    时间: 2024-3-26 10:27


  
子程序名返回值类型公开备 注
子程序2逻辑型 
参数名类 型参考可空数组备 注
list存取列表
list2存取列表
bb文本型
变量名类 型静态数组备 注
list3存取列表 
i整数型 
b文本型 
json存取键值表 
bool逻辑型 
计次循环首 (list.取数量 (), i)
如果真 (取反 (list.取逻辑值 (i, “f”)) list.取文本 (i, “a”) = bb)
list.置逻辑值 (取主键路径 (i, “f”), )
list.取键值表 (i, json)
list2.添加值 (json)
b = list.取文本 (i, “b”)
如果真 (子程序2 (list, list3, b))
list2.置列表 (取主键路径 (list2.取数量 (), “children”), list3, )
bool = 真

计次循环尾 ()
返回 (bool)


i支持库列表   支持库注释   
e2eeE2EE互联网服务器套件

[{"a":"ROOT","b":"316","c":"a0"},{"a":"316","b":"JYPT999.221209518016.0","c":"a1"},{"a":"JYPT999.221209518016.0","b":"JYPT999.221209518016.1","c":"a2"},{"a":"JYPT999.221209518016.1","b":"prod.10086000048093","c":"a3"},{"a":"JYPT999.221209518016.0","b":"prod.10086000053018","c":"a4"},{"a":"316","b":"prod.10086000053018","c":"a5"}]



  
子程序名返回值类型公开备 注
_启动子程序整数型 本子程序在程序启动后最先执行
变量名类 型静态数组备 注
list存取列表 
i整数型 
存取列表存取列表 
list.从JSON载入 ( #常量1, , , )
计次循环首 (list.取数量 (), i)
list.置列表 (取主键路径 (i, “children”), 存取列表, )
计次循环尾 ()
子程序2 (list, 存取列表, “ROOT”)
输出调试 (取程序名称 (1), 存取列表.到JSON (假, , , , ))
返回 (0)  ' 可以根据您的需要返回任意数值



i支持库列表   支持库注释   
e2eeE2EE互联网服务器套件






欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4