Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Salida Con Formato
Salida Con Formato
Donde:
numArg especifica el número de argumento (empezando desde cero) a mostrar. El ancho mínimo
del campo es especificado por ancho, y el formato es especificado por fmt. Los especificadores
ancho y fmt son opcionales.
Durante la ejecución, cuando un especificador de formato es encontrado en la cadena de formato,
el argumento correspondiente, como es especificado en numArg, es sustituido y mostrado. Así, la
posición de una especificación de formato dentro de la cadena de formato especifica el lugar donde
el dato correspondiente será mostrado. Ambos especificadores ancho y fmt son opcionales. Por
tanto, en su forma más simple, un especificador de formato indica cuál argumento mostrar. Por
ejemplo, {0} indica arg0, {1} especifica arg1, y así sucesivamente. Veamos el siguiente ejemplo
sencillo. La sentencia:
Console.WriteLine("Febrero tiene {0} o {1} días.", 28, 29);
Produce la salida siguiente:
Febrero tiene 28 o 29 días
Como se puede apreciar, el valor 28 es sustituido por {0} y 29 es sustituido por {1}. Así, los
especificadores de formato identifican la ubicación en la cual los argumentos subsecuentes, en este
caso 28 y 29, son mostrados dentro de la cadena. Es más, observe que los valores adicionales son
separados por comas, no por signos +.
Ahora se presenta una variación de la sentencia anterior que especifica anchos mínimos de campo:
Console.WriteLine("Febrero tiene {0,10} o {1,5} días.", 28, 29);
Como puede ver, los espacios han sido agregados para llenar las partes no usadas del campo.
Recuerde que un ancho mínimo de campo es justamente eso: el ancho mínimo. La salida puede
exceder ese ancho, de ser necesario.
Una de las formas más fáciles para especificar un formato es describir una plantilla para que sea
usada por WriteLine(). Para hacer esto se usan signos # para marcar posiciones de dígitos. También
se pueden especificar puntos decimales y comas. Por ejemplo:
Console.WriteLine("Esto es 10/3: {0:#.##}", 10.0/3.0);
123,456.56
Si desea mostrar valores monetarios, use el especificador de formato C. Por ejemplo:
decimal balance;
balance = 12323.09m;
Console.WriteLine("El balance actual es {0:C}", balance);
La salida para esta secuencia es mostrada (en formato de dólares estadounidenses):
El balance actual es $12,323.09
El formato especifica cómo va a ser la salida. Es una cadena de caracteres formada por caracteres
ordinarios, secuencias de escape y especificaciones de formato. El formato se lee de izquierda a
derecha.
Los argumentos representan el valor o valores a escribir. Cada argumento debe tener su
correspondiente especificación de formato y en el mismo orden. Si hay más argumentos que
especificaciones de formato, los argumentos en exceso se ignoran.
Cuando se ejecuta la sentencia anterior, los caracteres ordinarios se escribirán tal cual, las
especificaciones de formato serán sustituidas por los valores correspondientes en la lista de
argumentos y las secuencias de escape darán lugar al carácter o acción que representan. Así, para
edad igual a 20 y peso igual a 70.5, el resultado será:
Tiene 20 años y pesa 70.50 kilos
En general, una especificación de formato está compuesto por:
{posición [ , ancho ] [ : tipo [ posiciones decimales ] ] }
Una especificación de formato siempre está incluida entre llaves ({ }). El significado de cada uno de
los elementos se presenta a continuación: