Réécriture de la question avec plus d'informations
J'ai du code qui crée un objet Path
en utilisant des chemins relatifs, comme ceci: Paths.get("..", "folder").resolve("filename")
. Plus tard, je veux obtenir la chaîne de chemin d'accès "..\dossier\nom de fichier" (je suis sur Windows, donc les barres obliques inverses). Lorsque j'exécute ce code à l'aide de la compilation manuelle ou d'Eclipse, cela fonctionne très bien.
Cependant, lorsque je l'exécute à l'aide de Maven, cela ne fonctionne plus. La méthode toString()
renvoie [.., folder, filename]
Au lieu d'une chaîne de chemin d'accès réelle. L'utilisation de path.normalize()
n'aide pas. L'utilisation de path.toFile().getPath()
retourne ce que je recherche, mais je pense qu'il devrait y avoir une solution utilisant uniquement l'API nio.path
.
Utilisation:
Paths.get(...).normalize().toString()
Une autre solution serait:
Paths.get(...).toAbsolutePath().toString()
Cependant, vous obtenez des résultats étranges: Paths.get("/tmp", "foo").toString()
renvoie /tmp/foo
Ici. Quel est votre système de fichiers?