code: @CheckForNull
    public String relativePath(Path dir, Path file) {
      Path baseDir = dir.normalize();
      Path path = file.normalize();
      if (!path.startsWith(baseDir)) {
        return null;
      }
      try {
        Path relativized = baseDir.relativize(path);
        return FilenameUtils.separatorsToUnix(relativized.toString());
      } catch (IllegalArgumentException e) {
        return null;
      }
    }
docs: Similar to {@link Path#relativize(Path)} except that:
  <ul>
  <li>null is returned if file is not a child of dir
  <li>the resulting path is converted to use Unix separators
  </ul>
  @since 6.0