Obtenir des chemins relatifs à partir d'URL absolues en Java
Lorsque vous travaillez avec des chemins en Java, il est souvent nécessaire de convertir des chemins absolus en chemins relatifs avec par rapport à un chemin de base spécifié. Ceci peut être réalisé en utilisant la méthode relativize() fournie par la classe java.net.URI.
Considérez les exemples de chemins :
/var/data/stuff/xyz.dat /var/data
Pour créer un chemin relatif en utilisant ce dernier chemin comme sa base, vous pouvez faire ce qui suit :
String path = "/var/data/stuff/xyz.dat"; String base = "/var/data"; String relative = new File(base).toURI().relativize(new File(path).toURI()).getPath();
Ce code convertit les chemins absolus en URI, effectue la relativisation et extrait le chemin résultant. Le résultat sera :
stuff/xyz.dat
Veuillez noter que pour les chemins de fichiers en particulier, Java 1.7 a introduit la méthode relativize() dans la classe java.nio.file.Path. Vous pouvez utiliser cette méthode pour une solution plus efficace si vous travaillez avec des chemins de fichiers.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!