Esta documentación está archivada y no tiene mantenimiento.

String.Format (Método) (String, Object)

Reemplaza el elemento de formato de un objeto String especificado por el equivalente textual del valor de un Object especificado.

Espacio de nombres: System
Ensamblado: mscorlib (en mscorlib.dll)

public static string Format (
	string format,
	Object arg0
)
public static String Format (
	String format, 
	Object arg0
)
public static function Format (
	format : String, 
	arg0 : Object
) : String

Parámetros

format

String que contiene cero o varios elementos de formato.

arg0

Object al que se va a aplicar formato.

Valor devuelto

Copia de format en la que el primer elemento de formato ha sido reemplazado por el objeto String equivalente de arg0.

Tipo de excepciónCondición

ArgumentNullException

El valor de format es referencia de objeto null (Nothing en Visual Basic).

FormatException

El elemento de formato de format no es válido.

O bien

El número correspondiente a un argumento al que se va a dar formato es menor que cero, o mayor o igual que el número de objetos proporcionados a los que se va a dar formato.

Este método utiliza la función de formato compuesto de .NET Framework para convertir el valor de un objeto en su representación de texto e incrustar dicha representación en una cadena. .NET Framework proporciona una gran compatibilidad de formato, que se describe con más detalle en los siguientes temas sobre formato.

El parámetro format consta de cero o varias ejecuciones de texto combinadas con cero o varios marcadores de posición indizados, denominados elementos de formato, que se corresponden con un objeto de la lista de parámetros de este método. El proceso de formato reemplaza cada elemento de formato por la representación de texto del valor del objeto correspondiente.

La sintaxis de un elemento de formato es {index[,alignment][:formatString]}, y especifica un índice obligatorio, la longitud y alineación opcionales del texto con formato y una cadena opcional de caracteres especificadores de formato que rigen cómo se da formato al valor del objeto correspondiente. Los componentes de un elemento de formato son:

index

Entero de base cero que indica el elemento de una lista de objetos al que se le va a dar formato. Si el objeto especificado por index es referencia de objeto null (Nothing en Visual Basic), el elemento de formato se reemplaza con la cadena vacía ("").

alignment

Entero opcional que indica el ancho mínimo de la región que va a contener el valor con formato. Si la longitud del valor con formato es menor que el valor de alignment, la región se rellena con espacios. Si el valor de alignment es negativo, el valor con formato se alinea a la izquierda de la región; si el valor de alignment es positivo, el valor con formato se alinea a la derecha. Si no se especifica un valor de alignment, la longitud de la región coincide con la longitud del valor con formato. Si se especifica alignment, la coma es obligatoria.

formatString

Cadena opcional de especificadores de formato. Si no se especifica formatString y el argumento correspondiente implementa la interfaz IFormattable, se utiliza referencia de objeto null (Nothing en Visual Basic) como cadena de formato de IFormattable.ToString. Por tanto, todas las implementaciones de IFormattable.ToString se necesitan para que referencia de objeto null (Nothing en Visual Basic) se pueda utilizar como cadena de formato y se devuelva el formato predeterminado de la representación de objeto como un objeto String. Si se especifica formatString, los dos puntos son obligatorios.

Las llaves inicial y final, "{" y "}", son obligatorias. Para especificar una única llave literal en format, hay que escribir dos llaves iniciales o dos llaves finales, es decir, "{{" o "}}".

Si el valor de format es "Gracias por la compra de {0:####} copias de Microsoft® .NET (Referencia básica)." y arg0 es un valor Int16 igual a 123, el valor devuelto será:

"Gracias por la compra de 123 copias de Microsoft® .NET (Referencia básica).".

Si el valor de format es "El perro de Pedro tiene {0,-8:G} pulgas." y arg0 es un valor Int16 igual a 42 (en este ejemplo los caracteres de subrayado representan espacios de relleno), el valor devuelto será:

"El perro de Pedro tiene 42______ pulgas."

En el siguiente ejemplo de código se muestran los especificadores de formato estándar para los números, fechas y enumeraciones.

// This code example demonstrates the String.Format() method.
// Formatting for this example uses the "en-US" culture.

using System;
class Sample 
{
    enum Color {Yellow = 1, Blue, Green};
    static DateTime thisDate = DateTime.Now;

    public static void Main() 
    {
// Store the output of the String.Format method in a string.
    string s = "";

    Console.Clear();

// Format a negative integer or floating-point number in various ways.
    Console.WriteLine("Standard Numeric Format Specifiers");
    s = String.Format(
        "(C) Currency: . . . . . . . . {0:C}\n" +
        "(D) Decimal:. . . . . . . . . {0:D}\n" +
        "(E) Scientific: . . . . . . . {1:E}\n" +
        "(F) Fixed point:. . . . . . . {1:F}\n" +
        "(G) General:. . . . . . . . . {0:G}\n" +
        "    (default):. . . . . . . . {0} (default = 'G')\n" +
        "(N) Number: . . . . . . . . . {0:N}\n" +
        "(P) Percent:. . . . . . . . . {1:P}\n" +
        "(R) Round-trip: . . . . . . . {1:R}\n" +
        "(X) Hexadecimal:. . . . . . . {0:X}\n",
        -123, -123.45f); 
    Console.WriteLine(s);

// Format the current date in various ways.
    Console.WriteLine("Standard DateTime Format Specifiers");
    s = String.Format(
        "(d) Short date: . . . . . . . {0:d}\n" +
        "(D) Long date:. . . . . . . . {0:D}\n" +
        "(t) Short time: . . . . . . . {0:t}\n" +
        "(T) Long time:. . . . . . . . {0:T}\n" +
        "(f) Full date/short time: . . {0:f}\n" +
        "(F) Full date/long time:. . . {0:F}\n" +
        "(g) General date/short time:. {0:g}\n" +
        "(G) General date/long time: . {0:G}\n" +
        "    (default):. . . . . . . . {0} (default = 'G')\n" +
        "(M) Month:. . . . . . . . . . {0:M}\n" +
        "(R) RFC1123:. . . . . . . . . {0:R}\n" +
        "(s) Sortable: . . . . . . . . {0:s}\n" +
        "(u) Universal sortable: . . . {0:u} (invariant)\n" +
        "(U) Universal sortable: . . . {0:U}\n" +
        "(Y) Year: . . . . . . . . . . {0:Y}\n", 
        thisDate);
    Console.WriteLine(s);

// Format a Color enumeration value in various ways.
    Console.WriteLine("Standard Enumeration Format Specifiers");
    s = String.Format(
        "(G) General:. . . . . . . . . {0:G}\n" +
        "    (default):. . . . . . . . {0} (default = 'G')\n" +
        "(F) Flags:. . . . . . . . . . {0:F} (flags or integer)\n" +
        "(D) Decimal number: . . . . . {0:D}\n" +
        "(X) Hexadecimal:. . . . . . . {0:X}\n", 
        Color.Green);       
    Console.WriteLine(s);
    }
}
/*
This code example produces the following results:

Standard Numeric Format Specifiers
(C) Currency: . . . . . . . . ($123.00)
(D) Decimal:. . . . . . . . . -123
(E) Scientific: . . . . . . . -1.234500E+002
(F) Fixed point:. . . . . . . -123.45
(G) General:. . . . . . . . . -123
    (default):. . . . . . . . -123 (default = 'G')
(N) Number: . . . . . . . . . -123.00
(P) Percent:. . . . . . . . . -12,345.00 %
(R) Round-trip: . . . . . . . -123.45
(X) Hexadecimal:. . . . . . . FFFFFF85

Standard DateTime Format Specifiers
(d) Short date: . . . . . . . 6/26/2004
(D) Long date:. . . . . . . . Saturday, June 26, 2004
(t) Short time: . . . . . . . 8:11 PM
(T) Long time:. . . . . . . . 8:11:04 PM
(f) Full date/short time: . . Saturday, June 26, 2004 8:11 PM
(F) Full date/long time:. . . Saturday, June 26, 2004 8:11:04 PM
(g) General date/short time:. 6/26/2004 8:11 PM
(G) General date/long time: . 6/26/2004 8:11:04 PM
    (default):. . . . . . . . 6/26/2004 8:11:04 PM (default = 'G')
(M) Month:. . . . . . . . . . June 26
(R) RFC1123:. . . . . . . . . Sat, 26 Jun 2004 20:11:04 GMT
(s) Sortable: . . . . . . . . 2004-06-26T20:11:04
(u) Universal sortable: . . . 2004-06-26 20:11:04Z (invariant)
(U) Universal sortable: . . . Sunday, June 27, 2004 3:11:04 AM
(Y) Year: . . . . . . . . . . June, 2004

Standard Enumeration Format Specifiers
(G) General:. . . . . . . . . Green
    (default):. . . . . . . . Green (default = 'G')
(F) Flags:. . . . . . . . . . Green (flags or integer)
(D) Decimal number: . . . . . 3
(X) Hexadecimal:. . . . . . . 00000003

*/

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter Edition

.NET Framework no admite todas las versiones de cada plataforma. Para obtener una lista de las versiones admitidas, vea Requisitos del sistema.

.NET Framework

Compatible con: 2.0, 1.1, 1.0

.NET Compact Framework

Compatible con: 2.0, 1.0
Mostrar: