Formatos con String.Format en C#



formatos en c sharp
Todas las aplicaciones que desarrollamos en algún momento necesitan formatear algún tipo de datos, y no se a ustedes pero a mi siempre se me olvidan los formatos y como obtener los resultados de una u otra forma, es por eso que decidí hacer este post, y recopilar la mayor cantidad de formatos posibles, para buscarlos cuando necesite y ustedes puedan copiarlos ;=).

Para formatear cadenas existe una clase especializada en el manejo de cadenas, esta clase se llama String, su nombre completo es System.String, ya que se encuentra en el namespace System.
En esta clase vamos a encontrar una función llamada Format que se encargará de reemplazar el valor de un dato (entero, real, una cadena, un carácter, hasta de un objeto), por el formato que se especifique en el parámetro.

En forma general, y aunque tiene varias sobrecargas, String.Format tiene la siguiente sintaxis:

Formatos para números:
  Tipo   Ejemplo   Resultado
Currency
 String.Format('{0:c}',2.5); 
2.5
Decimal (Numero Entero)
 String.Format('{0:d}',200); 
200
Scientific
 String.Format('{0:e}',254325.22); 
254325.22
General
 String.Format('{0:g}',20.50); 
20.50
Number (Número con comas para los miles)
 String.Format('{0:n}',2548241.50); 
2548241.50
Hexadecimal
 String.Format('{0:x}',2548241); 
2548241
Cantidad de decimales
 String.Format('{0:0.000}',254.623645); 
254.623645


Formato para Cadenas
  Tipo   Ejemplo   Resultado
Alineacion a la derecha
 String.Format('{0,30}',Identado a la derecha); 
Identado a la derecha
Alineacion a la izquierda
 String.Format('{0,-5}',Identado a la izquierda); 
Identado a la izquierda


Formato para Fechas
  Tipo   Ejemplo   Resultado
Día
 String.Format('{0:dd}', DateTime.Now ); 
12
Nombre del Día acortado
 String.Format('{0:ddd}', DateTime.Now ); 
Wed
Nombre del Día – largo
 String.Format('{0:dddd}', DateTime.Now ); 
Wednesday
Era
 String.Format('{0:gg}', DateTime.Now ); 
A.D.
Hora
 String.Format('{0:hh}', DateTime.Now ); 
09
Hora en formato de 24h.
 String.Format('{0:HH}', DateTime.Now ); 
09
Minutos
 String.Format('{0:mm}', DateTime.Now ); 
21
Meses
 String.Format('{0:MM}', DateTime.Now ); 
09
Abreviación del Mes
 String.Format('{0:MMM}', DateTime.Now ); 
Sep
Nombre Completo del Mes
 String.Format('{0:MMMM}', DateTime.Now ); 
September
Segundos
 String.Format('{0:ss}', DateTime.Now ); 
29
AM o PM
 String.Format('{0:tt}', DateTime.Now ); 
AM
Año en dos dígitos
 String.Format('{0:yy}', DateTime.Now ); 
12
Año en formato largo
 String.Format('{0:yyyy}', DateTime.Now ); 
2012
Short Date
 String.Format('{0:d}', DateTime.Now ); 
9/12/2012
Long Date
 String.Format('{0:D}', DateTime.Now ); 
Wednesday, September 12, 2012
Hora y Fecha en formato corto
 String.Format('{0:f}', DateTime.Now ); 
Wednesday, September 12, 2012 9:21 AM
Hora y Fecha en formato largo
 String.Format('{0:F}', DateTime.Now ); 
Wednesday, September 12, 2012 9:21:29 AM
Hora Universal
 String.Format('{0:u}', DateTime.Now ); 
2012-09-12 09:21:29Z



Si me hizo falta alguno por fa comentenlo y lo agrego.

Espero que lo disfruten, compartan y comenten. ;)

"Si se puede imaginar... se puede programar."
Google