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.
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.
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);
}
}
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)
}
}
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
}
}
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.
}
}
{0}
, {1}
) deben coincidir con la posición de los argumentos que se pasan.
{0:C}
para moneda, {0:N}
para números o {0:D}
para fechas.
Para más detalles, consulta la documentación oficial de Microsoft: Documentación de string.Format()
Jorge García
Fullstack developer