code: public static boolean isDescendant(File forParent, File potentialChild) throws IOException {
          Path child = fileToPath(potentialChild.getAbsoluteFile()).normalize();
          Path parent = fileToPath(forParent.getAbsoluteFile()).normalize();
          return child.startsWith(parent);
      }
docs: A check if a file path is a descendant of a parent path
  @param forParent the parent the child should be a descendant of
  @param potentialChild the path to check
  @return true if so
  @throws IOException for invalid paths
  @since 2.80
  @see InvalidPathException