Volver a la página principal
miércoles 25 septiembre 2024
39

Cómo formatear cadenas en C#

El método string.Format() en C# se utiliza para construir cadenas con formato personalizado. Este método permite insertar valores dentro de una cadena de texto, aplicando un formato específico a números, fechas u otros tipos de datos, lo que facilita la creación de mensajes o salidas con un formato adecuado.

¿Qué es string.Format() en C#?

string.Format() es un método estático que toma una cadena de formato y una serie de argumentos para generar una nueva cadena. En la cadena de formato, los marcadores como {0}, {1}, etc., son reemplazados por los valores que se pasan como argumentos, permitiendo así una fácil interpolación de valores en una cadena.

Ejemplos de uso de string.Format() en C#

Insertar valores en una cadena

using System;

class Program
{
    static void Main()
    {
        string nombre = "Juan";
        int edad = 30;

        string mensaje = string.Format("Mi nombre es {0} y tengo {1} años.", nombre, edad);
        Console.WriteLine(mensaje);
    }
}

Formatear números

Puedes utilizar string.Format() para aplicar formatos numéricos, como decimales, moneda o porcentajes.

using System;

class Program
{
    static void Main()
    {
        double numero = 12345.6789;

        // Formatear como número con dos decimales
        string resultado = string.Format("Número formateado: {0:N2}", numero);
        Console.WriteLine(resultado); // Salida: Número formateado: 12,345.68

        // Formatear como moneda
        string moneda = string.Format("Precio: {0:C}", numero);
        Console.WriteLine(moneda); // Salida: Precio: $12,345.68 (depende de la cultura local)
    }
}

Formatear fechas

También puedes formatear fechas usando string.Format() con formatos predefinidos o personalizados.

using System;

class Program
{
    static void Main()
    {
        DateTime fecha = DateTime.Now;

        // Formatear fecha corta
        string fechaCorta = string.Format("Fecha corta: {0:d}", fecha);
        Console.WriteLine(fechaCorta); // Salida: Fecha corta: 25/09/2024 (depende de la cultura local)

        // Formatear fecha y hora
        string fechaHora = string.Format("Fecha y hora: {0:dd/MM/yyyy HH:mm:ss}", fecha);
        Console.WriteLine(fechaHora); // Salida: Fecha y hora: 25/09/2024 15:45:30
    }
}

Uso de índices en el formato

Puedes reutilizar los mismos valores múltiples veces o cambiar su orden en la cadena de formato.

using System;

class Program
{
    static void Main()
    {
        string nombre = "Ana";
        int edad = 28;

        string mensaje = string.Format("{0} tiene {1} años. {0} vive en Madrid.", nombre, edad);
        Console.WriteLine(mensaje); // Salida: Ana tiene 28 años. Ana vive en Madrid.
    }
}

Consideraciones

  • Los índices en la cadena de formato (por ejemplo, {0}, {1}) deben coincidir con la posición de los argumentos que se pasan.
  • Puedes aplicar diferentes especificadores de formato, como {0:C} para moneda, {0:N} para números o {0:D} para fechas.

Referencia oficial

Para más detalles, consulta la documentación oficial de Microsoft: Documentación de string.Format()

Etiquetas:
csharp
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer