C# 基于字符分隔字符串的层次结构

C# 基于字符分隔字符串的层次结构,c#,asp.net,C#,Asp.net,我对我的问题做了很多研究,似乎没有找到一个好的解决办法 问题我有一个包含以下内容的列表 a a/b a/b/c a/b/c/d a/b/f a/1 a/2 t t/1 我需要将其解析为一个可以处理父子层次结构的类。知道任何级别都可以有无限数量的子级 欢迎提供任何帮助。非常简单,只需使用字符串即可。拆分: String source = "a;a/b;a/b/c;a/b/c/d"; String[] rows = source.Split(';'); foreach(String row in

我对我的问题做了很多研究,似乎没有找到一个好的解决办法

问题我有一个包含以下内容的列表

a
a/b
a/b/c
a/b/c/d
a/b/f
a/1
a/2
t
t/1
我需要将其解析为一个可以处理父子层次结构的类。知道任何级别都可以有无限数量的子级


欢迎提供任何帮助。

非常简单,只需使用字符串即可。拆分:

String source = "a;a/b;a/b/c;a/b/c/d";
String[] rows = source.Split(';');
foreach(String row in rows)
    Console.WriteLine(row);

困难的部分是将其排列在树中。

非常简单,只需使用字符串即可。拆分:

String source = "a;a/b;a/b/c;a/b/c/d";
String[] rows = source.Split(';');
foreach(String row in rows)
    Console.WriteLine(row);

困难的部分是将其排列在树中。

输入的格式几乎与Sql Server层次结构中的节点路径字符串相同。下面关于解析这些的StackOverflow问题可能非常接近,如果不是您想要的


输入的格式与Sql Server层次结构中的节点路径字符串几乎相同。下面关于解析这些的StackOverflow问题可能非常接近,如果不是您想要的


发布“解析此数据以如下方式表示”的代码。List myVar=new List(myString.Split(“;”);最终结果应类似于树控件,其中顶部节点将为“a”,并且将有子节点“b”。任何节点都可能有多个子节点,并且深度未知。您能指望服务中的值以任何特定顺序出现吗?顺序将始终返回,顶部路径位于第一位,但是字符串可以包含多个顶级值,每个顶级值都有多个子项。发布“将此数据解析为以下形式”的代码。List myVar=new List(myString.Split(“;”);最终结果应类似于树控件,其中顶部节点将为“a”,并且将有子节点“b”。任何节点都可能有多个子节点,并且深度未知。您能指望服务中的值以任何特定顺序出现吗?顺序将始终返回,顶部路径位于第一位,但是字符串可以包含多个顶级值,每个顶级值都有多个子项。我需要列表中的父子关系,该列表是在我将值拆分为“a/b/c/d”后生成的。此值对每个新路径重复。假设路径'top'有两个子项'child1',child2',这就是列表的样子,“top;top/child1;top/child2”一旦你从逗号分隔的位置解析它,你会得到列表中的3个项“top”,“top/child1”,“top/child2”,我需要将其解析成一个可以处理父子层次结构的类。知道任何级别都可以有无限数量的子级。我需要从列表中创建父子关系,该列表是在我将值拆分为“a/b/c/d”后生成的。此值对每个新路径重复。假设路径'top'有两个子项'child1',child2',这就是列表的样子,“top;top/child1;top/child2”一旦你从逗号分隔的位置解析它,你会得到列表中的3个项“top”,“top/child1”,“top/child2”,我需要将其解析成一个可以处理父子层次结构的类。知道任何级别都可以有无限数量的子级。我在搜索中没有找到,因为我只查找c#和asp.net标记。那会很有效的。非常感谢。在过去的几个小时里,我一直在思考这个问题,只有当数据返回时带有实际ID时,这个示例才有效。我在搜索中没有找到该数据,因为我只查找c#和asp.net标记。那会很有效的。非常感谢。在过去的几个小时里,我一直在努力解决这个问题,只有当数据带着实际ID返回时,这个示例才非常有效,而我没有