例如,有一个路径:C:\Users\user\source\repos\test1\test.txt 如何从中得到一个树分支:c:-->Users-->user-->source.... ..等等 .d。我想要算法本身,如何安排这一切。我可以将路径拆分为列表:
void GetParent(DirectoryInfo inf, List<string> coll)
{
coll.Add(inf.Parent.Name);
if (inf.Parent.Name != selectedDisk)
{
GetParent(inf.Parent, coll);
}
}
我可以从文件名分支回到根文件夹:
tree.Items.Add(GetParent(selectedDirInfo));
TreeViewItem GetParent(DirectoryInfo inf)
{
TreeViewItem t = new TreeViewItem();
t.Header = inf.Name;
if (inf.Parent.Name != selectedDisk)
{
t.Items.Add(GetParent(inf.Parent));
}
return t;
}
但是要从头收集到分支,到头来,脑洞都达不到。有任何想法吗?
好吧,例如像这样:
并且没有递归