Saltar la navegación

2.1.2.- Creación y eliminación de ficheros y directorios.

Cuando queramos crear un fichero, podemos proceder del siguiente modo:

try {
// Creamos el objeto que encapsula el fichero
File fichero = new File("c:\\prueba\\miFichero.txt");
// A partir del objeto File creamos el fichero físicamente
if (fichero.createNewFile()) System.out.println("El fichero se ha creado correctamente"); else System.out.println("No ha podido ser creado el fichero"); } catch (Exception ioe) { ioe.getMessage(); }
Para borrar un fichero podemos usar la clase File, comprobando previamente si existe el fichero, del siguiente modo:
// Borrar fichero
File fichero = new File("c:\\prueba\\miFichero.txt");
if (fichero.exists ())
fichero.delete();
Para crear un directorio, lo realizaremos del siguiente modo:
Try {
// Declaración de variables
      String directorio = "C:\\prueba";
      String varios = "carpeta1/carpeta2/carpeta3";
// Crear un directorio
      boolean exito = (new File(directorio)).mkdir();
         if (exito)
         System.out.println("Directorio: " + directorio + " creado");
// Crear varios directorios
         exito = (new File(varios)).mkdirs();
              if (exito)
              System.out.println("Directorios: " + varios + " creados");
          }catch (Exception e){
     System.err.println("Error: " + e.getMessage());
}

Para borrar un directorio con Java, tendremos que borrar cada uno de los ficheros y directorios que este contenga. Al poder almacenar otros directorios, se podría recorrer recursivamente el directorio para ir borrando todos los ficheros.

Podemos listar el contenido de un directorio e ir borrando con:

File [] ficheros = directorio.listFiles ();

Si el elemento es un directorio, lo sabemos mediante el método isDirectory ().

Después de vaciar el directorio, este, se puede borrar importando la librería FileUtils y después escribir FileUtils.deleteDirectory(newFile(destination));


Constituye una manera de especificar un proceso basado en su propia definición. Por ejemplo, se puede calcular de manera recursiva el factorial de un número n como n*factorial(n – 1), siendo el caso base factorial(0) = 1.