我有java.io.File对象A和B,其中A代表一个目录,B代表一个文件.B可以是绝对路径或低于A的0或更多级别的相对路径.确定B是否包含B的最有效方法是什么?
例如,
A是C:\ Users\bill\Desktop\abc\xyz123,B是C:\ Users\bob\Documents\inc\data.inc
要么
A是C:\ Users\bill\Desktop\abc\xyz123,B是C:\ Users\bob\Documents\x1\y1\inc\data.inc
要么
A是C:\ Users\bill\Desktop\abc\xyz123,B是..\..\..\Documents\inc\data.inc
Chr*_*ynn 13
您可以通过检查来查看A是否是B的父级
A.equals(B.getParentFile())
Run Code Online (Sandbox Code Playgroud)
编辑:如果你想检查B是否是A之下的一个或多个级别,只需继续获取ParentFile,直到它为A或null
File C = B.getParentFile();
while(C != null) {
if(A.equals(C))
return true;
C = C.getParentFile();
}
return false;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6260 次 |
| 最近记录: |