feed twitter facebook LinkedIn facebook

Java » Obtener ruta absoluta de un fichero

noviembre 23, 2006 por Víctor Cuervo 11 Comentarios Imprimir Imprimir

Si hay algo que tiene la librería Java IO es que nos permite manejar de forma muy extensa y con una gran facilidad los ficheros.

Una de las clases principales de la librería Java IO es File. Dicha clase representa de forma abstracta a las rutas ficheros y directorios. De esta forma podemos acceder a distintos sitemas de ficheros, independientemente de la estructura que estos tengan.

Así se trabajaría de igual manera dentro de un sistema UNIX donde la raiz sería representada por "\" o un sistema Windows donde se antepondría el nombre de la unidad en la que está el fichero.

Para conocer la ruta absoluta de un fichero, lo primero que tenemos que hacer es instanciar la clase File mediante alguno de sus constructores.

  1. File fichero = new File("fichero.txt");

A partir de este momento el objeto fichero (de tipo File) será el que contenga la representación de nuestro fichero.

Uno de los métodos de File, .getAbsolutePath() será el que nos devuelva la ruta absoluta del fichero. A si que solo tendremos que invocarlo desde el objeto fichero.

En nuestro caso, la siguiente línea de código, lo volcará a la consola:

  1. System.out.println(fichero.getAbsolutePath());

En mi caso lo he ejecutado bajo una máquina Windows y me ha devuelto el siguiente resultado:

C:\workspace_eclipse\lineadecodigo_com\fichero.txt

Como véis. Muy sencillo.

tags:

Artículos relacionados:

11 comentarios »

RSS feed para los comentarios de esta entrada. TrackBack URI

1 2
  1. javier
    febrero 8, 2007 #

    como puedo hacer para preguntar si existe un jpg en mi carpeta /img/fotos, existe algun metodo de la clase File para hacer esto ??

  2. lineadecodigo
    febrero 9, 2007 #

    Puedes utilizar el ejemplo “Saber si existe un fichero con Java”.

    Espero que te pueda ayudar.

  3. GUORDO
    febrero 22, 2008 #

    el link de descarga no funciona

  4. gabriel
    septiembre 21, 2008 #

    hola gente SUN,tengo una duda
    ¿ Como hago para obtener la ruta absoluta incluyendo los
    nombres de los paquetes y del archivo en ejecucion?
    Ejemplo : deberia devolver “WorkSpace/NameProyecto/paquete1/paquete2/Archivo.java” si ejecuto lo siguiente :

    package paquete1.paquete2;
    public class Hola {
    public static void main(String[] args) {
    System.out.println(“Ayuda por favor”);
    }
    }

  5. David M
    julio 25, 2009 #

    Ayuda ¿Como puedo hacer para obtener la ruta NO del workspace sino de la ruta de donde esta instalado java PERO desde una aplicacion java?. Manualmente se en donde esta instalado en C:\Archivos de Programa\Java. GRACIAS.
    Mi correo es responan aqui por favor: dmcoding hotnail com

  6. CC
    octubre 28, 2009 #

    y si lo q quiero es encontrar la ruta pero desde otro directorio?Sé el nombre de la carpeta, pero no sé la ruta entera…Muchas gracias

  7. Leonardo Galindo
    febrero 9, 2010 #

    Tambien quisiera saber si existe una función, la cuál busque sobre una carpeta específica un archivo y me devuelva la ruta completa
    Gracias!!

  8. Wilfredo Moreno
    febrero 18, 2011 #

    Buenas noches! muy buen material… tengo una duda, en mi aplicacion java tengo varios archivo .jasper (en un paquete denominado”reports”), al momento de ejecutarlo desde netbeans, lo hace perfectamente… pero cuando genero el .jar de mi aplicacion, los reportes no funcionan porque no encuentra la ruta del .jaser.. no se como indicarle la ruta del reporte para que funcione en nebeans, desde el .jar bien sea en linux o windows..

    Muchas GRacias de ante mano

  9. Obtener la ruta absoluta de un fichero con Java | Diseño web económico
    enero 7, 2012 #

    [...] Obtener ruta absoluta de un fichero [...]

  10. Pepe
    abril 4, 2013 #

    ¿Cómo podría hacer esto mismo pero en C++?

1 2

Deja un comentario

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*