首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C# 提取string中的内容并动态生成treeview,该怎么解决

2013-03-28 
C# 提取string中的内容并动态生成treeview现有许多string类型的数据,都是表示目录的,比如:/.3/fedora-epe

C# 提取string中的内容并动态生成treeview
现有许多string类型的数据,都是表示目录的,比如:
"/.3/fedora-epel"
"/.3/fedora-epel/beta"
"/.3/fedora-epel/5"
"/.3/fedora-epel/5/SRPMS"
"/etc"
"/.3"
"/open/CAS"
"/open/Aircrack-ng"  
... ...

现在要做的是根据这些string数据,动态添加完成一个TreeView,以直观的方式显示该目录的层次结构。
TreeView控件这方面没问题,关键是如何提取这些string的内容,并判定父子节点的关系?新手求思路。
[解决办法]
那些一两个字的估计都不知道自己说啥,楼主不用理会。

先从最简单效率最低的做起:
一个字符串按照“/”拆分,从头往后,第一个子字符串是树节点第一层,那么在树节点Nodes里面找(ContainsKey)有没有,有的话找到节点继续往下,没有的话插入节点往下;然后第二层,在前面那个节点下面去找有没有存在的节点,有的话找到节点继续往下,没有的话插入节点再往下……不重复了,字多也没钱。
然后下一个字符串,从根节点重新开始找……

对了插入和查找的时候可以用键,效率高一些。

热点排行