【发布时间】:2016-04-21 14:36:51
【问题描述】:
我有两个目录路径:
Path 1 = "C:\Users\SomeUser\Documents\Embarcadero\Studio\"
Path 2 = "C:\Users\SomeUser\Documents\"
如您所见,Path 1 比 Path 2 深两层
换句话说,路径 1 深度为 6,路径 2 深度为 4
我需要一个可以计算这个深度的函数
编辑:
这是误解我问题的任何人的另一个例子
Path A :="c:\" {This is level 1 or depth 1}
Path B := "c:\foo" {This is level 2 or depth 2}
Path C := "c:\bar" {This is level 2 or depth 2}
Path D := "c:\foo\folder1" {this is level 3 or depth 3}
Path E := "c:\bar\folder2" {this is level 3 or depth 3}
我认为现在很清楚,当我说 depth 时,我的意思是如果我在驱动器 C 中我应该潜多深才能到达最终文件夹
我为什么需要这个?
因为在我的程序中,用户从他给出的基本目录中设置深度,我必须搜索并找到该基地根目录中的所有文件(如果深度为 1),例如深度为 2 我也必须在根目录中的任何文件夹内进行搜索,如果是 3,我将在该文件夹位于根目录的另一个文件夹内的文件夹内搜索任何文件
我的程序中的另一个功能也需要我需要的距离或深度差异,可以计算为
abs(depthFolder1 - depthFolder 2)
【问题讨论】:
-
C:\foo 和 C:\bar 之间的预期距离是多少? C:\foo 和 D:\baz 之间怎么样?
-
@RobKennedy 显然是“0”
-
"0" 好像不对,C:\foo 和 C:\foo 呢?
-
对我来说并不明显,尽管它确实是您的函数将返回的内容。 C:\foo\quux 和 C:\bar 之间的距离呢?把它想象成一棵树,我会说距离是 3。(绘制节点,然后计算从一片叶子到另一片叶子的边。)我会说从 C:\ 到 D:\ 的距离未定义,因为树没有根节点。 Sertac 的示例显然为零。
-
@RobKennedy,在 C:\ 和 D:\ 之间有一个 根音,即
MyComputer。这取决于...
标签: delphi delphi-xe2