来自char分隔字符串的层次结构

时间:2011-12-07 20:07:54

标签: c# asp.net

我一直在对我的问题进行大量研究,似乎无法找到一个好的解决方案。

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

a
a/b
a/b/c
a/b/c/d
a/b/f
a/1
a/2
t
t/1

我需要将其解析为可以处理父子层次结构的类。知道任何级别都可以拥有无​​限量的孩子。

任何帮助都会得到满足。

2 个答案:

答案 0 :(得分:2)

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

Converting flattened hierarchical data from SQL Server into a structured JSON object with C#/Linq

答案 1 :(得分:1)

这很简单,只需使用String.Split:

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

困难的部分是将它安排在树上。