package com.logicbig.example;
import java.io.File;
public class FindParentTest {
public static void main (String[] args) {
File file = new File("C:\\projects\\test-project\\src\\" +
"main\\java\\com\\example.java");
File parent = findParentDirBySiblingName(file, "pom.xml");
System.out.println(parent.getAbsolutePath());
}
/**
* @param thisFile a known File Somewhere Under Target Parent
* @param siblingName search by name
* @return
*/
public static File findParentDirBySiblingName (File thisFile,
String siblingName) {
File parent = thisFile.getParentFile();
while (parent != null) {
File file = new File(parent.getAbsolutePath() + File.separatorChar + siblingName);
if (file.exists()) {
return parent;
}
parent = parent.getParentFile();
}
return null;
}
}