当前位置: 首页 > 面试题库 >

将网址字符串解析为树层次结构

汪弘光
2023-03-14
问题内容

我有一个标头表,其中包含网页列表。每个记录都有一个页面URL字段,我希望将其解析为一个层次结构(TreeView)。我不确定最好的解决方法,但是在使其正常工作方面遇到了问题。

这是URLS的示例:

/file1.aspx
/file2.aspx
/aFolder/file.aspx
/aFolder/file2.aspx
/bfolder/file.aspx
/bFolder/cFolder/file.aspx

我想将这种类型的列表放入文件浏览器样式的树形视图中,您可以展开文件夹,然后在最后选择文件。

就像是

--Root
  |
  +-aFolder
  |   - aFolderFile1.aspx
  |   - aFolderFile2.aspx
  +-bFolder
      +-cFolder
      |    -cFolderFile1.aspx
      -bFolderFile1.aspx

实际数据显然每个都有更多子文件夹和文件。

我正在寻找的是一些代码,可以是.NET或SQL来解析我的字符串。我试图使用一些与WITH和UNION ALL一起使用的SQL,但我只是无法使它对我有用。

为了将其绑定到TreeView,数据源需要具有父字段才能关联节点。因此,例如,文件cFolderFile1.aspx的父级是cFolder,而cFolder的父级是bFolder,依此类推。

希望我提供了足够的信息。如果没有,请告诉我,我将编辑该帖子。


问题答案:

谢谢大家的建议。这些链接似乎都不是我想要的,因此我最终将某些东西放在一起。

有很多代码,但是总的来说,我将URL列表读入具有一些额外属性的Generic List中,并使用了一些regex语句来解析路径。

因为URLS列表没有任何父ID /子ID,所以我使用了FIND函数并获得了所需的部分。



 类似资料:
  • 问题内容: 我有一个将存储Number对象的列表。该列表将通过分析字符串列表来填充,其中每个字符串都可以表示Number的任何子类。 如何将字符串解析为通用数字,而不是特定的整数或浮点数? 问题答案: 数字不能实例化,因为它是抽象类。我建议传入数字,但是如果您设置为字符串,则可以使用任何子类来解析它们, 要么 @请参阅NumberFormat

  • 问题内容: 我正在从数据库读取属性文件。我检查了,没有方法可以从实例中解析。有什么办法吗? 问题答案: 没错,没有从a读取方法,但实际上它有从or 读取的更通用的方法。 因此,如果您有某种方式将您的信息以任何一种方式呈现出来,那么您可以致电,即有效地逐个迭代字符的源。这感觉它应该存在,并且确实存在-java.io.StringReader。 那么,将其组合起来非常简单:

  • 问题内容: 我有一个格式的字符串时间。我没有找到任何格式来解析此字符串值。有什么办法可以将此字符串值转换为 Gotime.Time吗? 编辑-这不是重复的问题。我知道如何解析,但是我没有意识到我们可以使用除时间格式包中所列之外的任何布局。这个答案消除了我的疑惑。 问题答案: 这是完全,所以使用格式字符串(布局)。 例: 输出(在Go Playground上尝试): 引自以下文档的文档: 解析解析一

  • 问题内容: 我试图解析一个字符串,以分隔字符串中的列表。我目前有字符串: 有什么方法可以解析字符串,以便字典键是列表的第一个元素,而键的值是元素的下一个。例如: 问题答案: insted的的,你可以有列表: 您可以使用从字符串解析Python数据结构

  • 问题内容: 我有这个字符串:10,692,467,440,017.120(是一个数字)。 我想将其解析为BigDecimal。问题是我没有尝试过DecimalFormat和NumbeFormat。有什么帮助吗? 问题答案: 试试这个 如果要构建具有I18N支持的应用程序,则应使用 还请记住,它可能会引发a,因此您需要处理它(使用try / catch)或引发它,然后让程序的另一部分处理它

  • 问题内容: 我有一个弦 然后,我想将其解析为sqlDate。并将其插入数据库。 是否可以将该字符串解析为sqlDate?!?! 是的,SQL日期格式为“ yyyy-mm-dd” 问题答案: 用于将String日期解析为java.util.Date 然后使用millis将其转换为java.sql.Date