java - nombre - Cómo obtener una ruta absoluta para archivar en la carpeta/resources en su proyecto
obtener ruta donde se ejecuta la aplicacion java (5)
Cree la instancia de classLoader de la clase que necesita, luego puede acceder a los archivos o recursos fácilmente. ahora accede a la ruta usando el método getPath()
de esa clase.
ClassLoader classLoader = getClass().getClassLoader();
String path = classLoader.getResource("chromedriver.exe").getPath();
System.out.println(path);
Asume la configuración estándar de maven.
Diga en su carpeta de recursos que tiene un archivo abc
.
En Java, ¿cómo puedo obtener una ruta de acceso absoluta al archivo, por favor?
Debe especificar el camino iniciado desde /
URL resource = YourClass.class.getResource("/abc");
Paths.get(resource.toURI()).toFile();
La forma correcta que realmente funciona:
URL resource = YourClass.class.getResource("abc");
Paths.get(resource.toURI()).toFile();
No importa dónde esté físicamente el archivo en el classpath, se encontrará siempre que el recurso sea realmente un archivo y no una entrada JAR.
(El new File(resource.getPath())
aparentemente obvio new File(resource.getPath())
no funciona para todas las rutas. ¡La ruta todavía está codificada en URL!
Para devolver un archivo o ruta de archivo
URL resource = YourClass.class.getResource("abc");
File file = Paths.get(resource.toURI()).toFile(); // return a file
String filepath = Paths.get(resource.toURI()).toFile().getAbsolutePath(); // return file path
Puede crear un objeto File
y usar el método getAbsolutePath
:
File file = new File("resources/abc.txt");
String absolutePath = file.getAbsolutePath();