public static DocumentFile getTargetDirDocumentFile(final DocumentFile base, String path) {
DocumentFile target
=
null;
if
(base
=
=
null) {
Log.e(LOGTAG,
"SafFile.getTargetDirDocumentFile base is null!"
);
return
null;
}
if
(path
=
=
null) path
=
"";
path
=
path.replace(
"\\", "
/
");
final String paths[]
=
path.split(
"/"
);
int
i;
final
int
end
=
paths[paths.length
-
1
].length() >
0
? paths.length
-
1
: paths.length
-
2
;
for
(i
=
0
; i < end; i
+
+
) {
/
/
Log.i(LOGTAG,
"getTar... path["
+
String.valueOf(i)
+
"], "
+
paths[i]);
if
(paths[i].equals(base.getName())) {
if
(i >
=
end
-
1
) {
/
/
Log.i(LOGTAG,
"getTar... "
+
path
+
" end="
+
paths[paths.length
-
1
]
+
" "
+
paths[end]);
return
base;
}
i
+
+
;
break
;
}
}
/
/
Log.i(LOGTAG,
"getTarget... "
+
base.getName()
+
" "
+
path);
target
=
base.findFile(paths[i
+
+
]);
/
/
Log.i(LOGTAG,
"target, "
+
target.getName());
for
(; i < end; i
+
+
) {
if
(target
=
=
null)
break
;
/
/
Log.i(LOGTAG,
"getTar..., "
+
path
+
" "
+
target.getName());
target
=
target.findFile(paths[i]);
}
return
target;
}