Tarea 2: Listado Parametrizado por Argumentos

Explicación del Ejercicio

En esta segunda tarea se amplía la funcionalidad del listado de directorios mediante el paso de argumentos por línea de comandos (args). Esto permite consultar dinámicamente cualquier ruta especificada al ejecutar el programa.

Conceptos y métodos clave:

  • Control de parámetros de entrada: Se valida si el array args contiene elementos (args.length == 0) para prevenir excepciones en tiempo de ejecución al intentar acceder a rutas no definidas.
  • Comprobación de existencia (exists()): Antes de procesar el contenido, se verifica mediante directorio.exists() si la ruta introducida existe en el sistema de archivos.
  • Gestión de contenido: Si la ruta es válida y existe, se obtiene el array mediante listFiles() y se muestra el listado por consola; en caso contrario, se notifica el error correspondiente.

Código Fuente y Salida

Clase1.java
package ClaseFile;

import java.io.File;

/**
 * @author Eva Gallardo Romero
 * @date 17 de sep de 2026
 * Muestra todo el contenido de un directorio determinado
 */

public class Clase1 {
	
    public static void main(String[] args) {
		
        // compruebo que se ha introducido una ruta 
        if (args.length == 0) {
            System.out.println("Error: Debes proporcionar la ruta del directorio como argumento.");
            return;
        }
		
        // objeto File que representa el directorio actual
        File directorio = new File(args[0]);
		
        // obtengo la lista de elementos que hay en el directorio
        File[] contenido = directorio.listFiles();
        
        // recorro el contenido que he obtenido del directorio y lo printeo
        if (directorio.exists()) {
            // recorro el contenido que he obtenido del directorio y lo printeo
            if (contenido != null) {
                System.out.println("Este es el contenido existente en Ficheros");
                for (int i = 0; i < contenido.length; i++) {
                    System.out.println(contenido[i]);
                }
            } else {
                System.out.println("No hay contenido en el directorio");
            }
        } else {
            System.out.println("El directorio introducido no existe");
        }

    }

}

Resultados Mostrados por Terminal

Caso 1: Ejecución sin argumentos (java ClaseFile.Clase1)

Salida de Consola - Error de Parámetros
Error: Debes proporcionar la ruta del directorio como argumento.

Caso 2: Directorio no existente (java ClaseFile.Clase1 "C:/RutaInexistente")

Salida de Consola - Ruta Inválida
El directorio introducido no existe

Caso 3: Ejecución correcta (java ClaseFile.Clase1 "src/ClaseFile")

Salida de Consola - Listado de Ruta
Este es el contenido existente en Ficheros src\ClaseFile\Clase0.java src\ClaseFile\Clase1.java src\ClaseFile\Clase2.java src\ClaseFile\Clase3.java src\ClaseFile\Clase4.java