我正在尝试使用Java指定的路径打印所有父文件夹。
例如,我得到了这条路径
/root/p0/p1/p2/p3/report
现在我的预期输出是
/root/p0/p1/p2/p3
/root/p0/p1/p2
/root/p0/p1
/root/p0
/root
我们怎样才能用Java做到这一点?任何预定义的函数都存在于Java中或通过循环它?如何循环此路径并获取预期的父URL?
答案 0 :(得分:1)
您可以尝试使用来自getParent
的{{1}}表单Path
或gerParentFile
。您的代码可能如下所示:
File
您还可以使用public static void printParents(File f){
while(f != null){
f = f.getParentFile();
if (f !=null && !f.getName().isEmpty())
System.out.println(f);
}
}
public static void printParents(String f){
printParents(new File(f));
}
之类的字符串方法来获取此路径中的所有部分。然后你可以加入你想要的部分
split
答案 1 :(得分:0)
您是否尝试过getParent函数:
public static String getParentName(File file) {
if(file == null || file.isDirectory()) {
return null;
}
String parent = file.getParent();
parent = parent.substring(parent.lastIndexOf("\\") + 1, parent.length());
return parent;
}