![]() |
1
73
您还可以使用
例子:
输出:
如果您需要更高的可靠性,可以使用
|
![]() |
2
14
|
![]() |
3
11
除了路径可能不存在(正典化可能不会成功)的事实外,这似乎是一种合理的方法,应该适用于直截了当的情况。 你可能想考虑打电话 getParentFile() 在循环中的“maybe child”上,测试它在每一步是否与父级匹配。如果父目录不是(真实的)目录,您也可以缩短比较。 也许像下面这样:
请注意,如果你希望孩子的关系是
严格的
(即目录不是其子目录)您可以更改初始
|
![]() |
4
8
这将适用于你的例子。它也会回来
|
![]() |
5
4
这可能会很好地工作,尽管我会使用
|
![]() |
6
4
|
|
7
1
注意相对路径!我认为最简单的解决方案是这样的:
在scala中,你可以有类似的方法:
|
![]() |
8
1
在测试路径是否相等时,应考虑以下因素:
综上所述,解决方案可能是这样的。Java
Kotlin:
|
![]() |
9
0
旧问题,但1.7之前的解决方案:
为了完整起见,java 1.7+解决方案:
|
|
10
0
令人惊讶的是,没有简单但实用的解决方案。 公认的答案确实将相同的目录视为子目录,这是错误的。 这里有一个使用 java.nio.file。路径 仅限API:
测试用例:
|
|
user29759326 · 如何返回递归函数中的最后一个值? 3 月前 |
|
malife89 · 将java中的字符串读取为正确的日期格式 3 月前 |
![]() |
Tim · 在java中,有没有更快的方法将字节数组写入文件? 3 月前 |
![]() |
rudraraj · java中未声明最终变量 4 月前 |
![]() |
Bala Ji · 以下BFS的实施效率如何? 4 月前 |