Java获取父级的父级

4

这个问题与这个问题非常相似:如何仅获取特定文件的直接父目录名称

但是他想要获取最近的父目录,而我想要能够选择其他“父目录”,例如:

bbbccc(考虑到所提到的问题的相同示例)

File file = new File("C:/aaa/bbb/ccc/ddd/test.java");

我尝试了file.getParent().getParent();但不起作用。

注意:如果可能,我不想在路径上使用正则表达式。


1
file.getParent().getParent() 不起作用了吗?发生了什么事?(如果你有想法并尝试过,你应该总是说出发生了什么。) - Jon Skeet
2个回答

13

getParent() 返回一个 String 类型的结果 - 你不能在一个 String 上调用 getParent() 方法。

相反,你需要使用 getParentFile() 方法:

File grandparent = file.getParentFile().getParentFile();

-2

getParent() 返回一个字符串;getParent() 返回一个文件。

Boolean fileNameChangedCheck = file.renameTo(
        new File(filePath.getParentFile(), "changedFileName"));

这里filePath.getParentFile()不能被filePath.getParent()替换;

JAVA API中还有更多;


getParentFile() 返回一个 File; - user10838135
getParentFile() 返回一个 File; - user10838135
你好,欢迎来到 Stack Overflow。当回答一个已有被采纳的答案的问题时,请确保加入一些额外的见解,解释为什么你提供的响应在某种程度上是具有实质性的,而不仅仅是重复原始发布者已经审核过的内容。在这种情况下,你已经复制了 @jon-skeet 已经给出的完全相同的信息。 - chb

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接