0Pricing
C# Academy · Lección

Formato compuesto con string.Format

Utilice marcadores de posición indexados y alineación.

Formato compuesto con string.Format es una lección gratuita de C# Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de C# Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de C# Academy incluye 4 lecciones en total.

Formato compuesto

string.Format usa marcadores numerados como {0} y {1}, que corresponden a los argumentos siguientes.

using System;

class Program {
    static void Main() {
        string msg = string.Format("Hello, {0}!", "Ada");
        Console.WriteLine(msg);
    }
}

Varios argumentos

Cada índice hace referencia a un argumento según su posición. {0} es el primero, {1} el segundo, y así sucesivamente.

using System;

class Program {
    static void Main() {
        Console.WriteLine(string.Format("{0} + {1} = {2}", 2, 3, 5));
    }
}

Reutilización de un índice

Puede usar el mismo índice varias veces para repetir un argumento sin pasarlo dos veces.

using System;

class Program {
    static void Main() {
        Console.WriteLine(string.Format("{0}{0}{0}", "ab"));
    }
}

Especificador de formato después de dos puntos

Añada dos puntos y un especificador para controlar el formato, como en {0:F2} para mostrar dos decimales.

using System;

class Program {
    static void Main() {
        Console.WriteLine(string.Format("Pi is {0:F2}", 3.14159));
    }
}

Alineación con una coma

Una coma y un ancho establecen la alineación: {0,8} alinea a la derecha en ocho caracteres; un ancho negativo alinea a la izquierda.

using System;

class Program {
    static void Main() {
        Console.WriteLine(string.Format("[{0,8}]", "hi"));
        Console.WriteLine(string.Format("[{0,-8}]", "hi"));
    }
}

Alineación y formato juntos

Puede combinar ambos: {0,10:F2} muestra dos decimales y alinea a la derecha en diez caracteres.

using System;

class Program {
    static void Main() {
        Console.WriteLine(string.Format("[{0,10:F2}]", 3.5));
    }
}

Formato con Console.WriteLine

Console.WriteLine acepta directamente la misma cadena de formato compuesto y sus argumentos.

using System;

class Program {
    static void Main() {
        Console.WriteLine("{0} scored {1} points", "Sam", 42);
    }
}

Creación de una tabla

La alineación facilita la creación de tablas sencillas y alineadas en la salida de la consola.

using System;

class Program {
    static void Main() {
        Console.WriteLine(string.Format("{0,-10}{1,5}", "Apples", 3));
        Console.WriteLine(string.Format("{0,-10}{1,5}", "Pears", 12));
    }
}

En qué se compila la interpolación

Internamente, las cadenas interpoladas suelen compilarse como formato compuesto. Son dos formas de usar la misma funcionalidad.

using System;

class Program {
    static void Main() {
        int n = 5;
        Console.WriteLine(string.Format("n = {0}", n));
        Console.WriteLine($"n = {n}");
    }
}

Escapado de llaves

Al igual que en la interpolación, duplique una llave para imprimirla literalmente en una cadena de formato compuesto.

using System;

class Program {
    static void Main() {
        Console.WriteLine(string.Format("{{0}} shows literally, {0} shows value", 7));
    }
}

Cuándo elegir Format

El formato compuesto resulta práctico cuando la plantilla se almacena por separado, por ejemplo, en archivos de recursos para la localización.

using System;

class Program {
    static void Main() {
        string template = "Welcome, {0}";
        Console.WriteLine(string.Format(template, "Lee"));
    }
}

Comprobación rápida

Compruebe cuánto sabe sobre el formato compuesto.

Resumen

string.Format usa marcadores indexados ({0}, {1}) asociados a los argumentos por posición, que pueden reutilizarse. Los dos puntos añaden especificadores de formato y la coma establece el ancho de alineación.

Este formato permite dar formato con Console.WriteLine y sirve de base para la interpolación; además, es ideal cuando las plantillas se encuentran en recursos independientes.

Preguntas frecuentes

¿La lección «Formato compuesto con string.Format» es gratis?

Sí — el texto completo de «Formato compuesto con string.Format» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de C# Academy, actualiza a CoddyKit PRO. El curso de C# Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Formato compuesto con string.Format»?

Utilice marcadores de posición indexados y alineación. Practicas C# Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar C# Academy?

No se requiere experiencia previa. C# Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Formato compuesto con string.Format»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de C# Academy?

Sí. Cada lección de C# Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Conceptos básicos de interpolación de cadenas
  2. Formato compuesto con string.Format
  3. Especificadores de formato numérico y de fechas
  4. Literales de cadenas sin formato
← Volver a C# Academy