我有这种树结构。
如何从中生成文件夹路径;
类似:folder1 / chilfolder1 / childfolder2 / childfolder3
对树中的所有文件夹执行此操作:)
答案 0 :(得分:0)
您称为文件和文件夹的对象只是JSON序列化对象内的对象。因此,如果您想要制作URIs
(唯一资源标识符),则应分析此数据并逐个节点地向下移动到对象中,添加\
(路径分隔符)和{{ 1}}当前节点名称的值。
答案 1 :(得分:0)
最简单的方法是使用众所周知的深度优先搜索算法。请考虑以下c#伪代码:
class Node {
public string Name;
public IEnumerbale<Node> Children;
}
void Main(){
var tree = new List<Node>();//fill it somehow
foreach(var node in tree){
DFS(node);
}
}
void DFS(Node root){
foreach(var node in root.Children){
node.Name = root.Name + '/' + node.Name;
DFS(node);
}
}
运行此代码后,您将获得存储在每个Name
Node
属性中的全名