TutorJava Nivel Básico

El lenguaje Java sigue las convenciones de UNIX que definen tres tipos diferentes de argumentos.

Adem�s, una aplicaci�n debe observar las siguientes convenciones para utilizar los argumentos de la l�nea de comandos en Java.

  • El gui�n ( - ) precede a las opciones, banderas o series de banderas.
  • Los argumentos pueden ir en cualquier orden, excepto cuando sea un argumento que requiere otros argumentos.
  • Las banderas pueden listarse en cualquier orden, separadamente o combinadas.

    -xn o -nx o -x -n.

  • T�picamente los nombres de fichero van al final.
  • El programa imprime un mensaje de error de utilizaci�n cuando no se reconoce un argumento de la l�nea de comandos. Estas sentencias pueden tener esta forma.
    utilizaci�n: nombre_aplicaci�n [ argumentos_opcionales ] argumentos_requeridos

.�Opciones

Los argumentos como -verbose son argumentos de palabra y deben especificarse completamente en la l�nea de comandos. Por ejemplo, -ver no corresponder�a con -verbose.

Se pueden utilizar sentencias como esta para comprobar los argumentos de palabras.

if (argument.equals("-verbose"))
    vflag = true;

Esta sentencia comprueba si la palabra -verbose est� en la l�nea de argumentos y activa una bandera en el programa para que este se ejecute en modo verboso.

.�Argumentos que Requieren Argumentos

Algunos argumentos necesitan m�s informai�n. Por ejemplo, un argumento como -output podr�a permitir que el usuario redirigiera la salida del programa. Sin embargo, la opci�n -output en solitario no ofrece la informaci�n suficiente a la aplicaci�n: �C�mo sabe la aplicaci�n d�nde redirigir la salida? Por lo tanto el usuario debe especificar tambi�n un nombre de fichero. Normalmente, el �tem siguiente de la l�nea de comandos proporciona la informaci�n adicional para el argumento que as� lo requiere. Se puede utilizar la siguiente sentencia para emparejar argumentos que requieren argumentos.

if (argument.equals("-output")) {
    if (nextarg < args.length)
        outputfile = args[nextarg++];
    else
        System.err.println("-output requiere un nombre de fichero");
}

Observa que el c�digo se asegura de que el usuario ha especificado realmente un argumento siguiente antes de intentar utilizarlo.

.�Banderas

Lss banderas son car�cteres que modifican el comportamieneo del programa de alguna manera. Por ejemplo, la bandera -t proporcionada al comando ls de UNIX indica que la salida debe ordenarse por la fecha de los ficheros. La mayor�a de las aplicaciones permiten al usuario especificar banderas separadas en cualquier orden.

-x -n     o    -n -x

Adem�s, para hacer un uso m�s sencillo, las aplicciones deber�n permitir que el usuario concatene banderas y las especifique en cualquier orden.

-nx    o    -xn

El programa de ejemplo descrito en la p�gina siguiente implementa un sencillo algoritmo para procesar banderas que pueden especificarse en cualquier orden, separadas o de forma combinada.

COMPARTE ESTE ARTÍCULO

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP