Formatear fechas en C#
Cuando trabajamos con fechas regularmente necesitamos modificarlo para su presentación al usuario, recurrimos a formatear fechas en C#.
Veamos algunas maneras de aplicar el formato a las fechas para obtener fecha y horas.
Para los ejemplos utilizare la siguiente fecha:
DateTime fecha = new DateTime(2018, 10, 26, 16, 30, 0);
Formatear fechas
Primero veamos como especificar el formato de fecha por zona, esto se hace indicando las siglas del país en el método de CreateSpecificCulture.
CultureInfo.CreateSpecificCulture("es-ES")
CultureInfo.CreateSpecificCulture("en-US")
Podría interesarte Mostrar fecha con horas en c#
Para poder utilizar esta clase es necesario agregar el espacio de nombre:
using System.Globalization;
Utilizando la especificación de la zona las fechas pueden quedar como sigue:
//Fecha con hora en espanol
string fechaSalida1 = fecha.ToString("g", CultureInfo.CreateSpecificCulture("es-ES"));
//Resultado: 26/10/2018 16:30
//Fecha con hora en ingles
string fechaSalida2 = fecha.ToString("g", CultureInfo.CreateSpecificCulture("en-US"));
//Resultado: 10/26/2018 4:30 PM
Podemos establecer el orden de la fecha, por ejemplo, quiero que la fecha sea día, mes y año; el código quedara de la siguiente manera:
//Fecha corta en dia, mes, año
string fechaSalida3 = fecha.ToString("dd/MM/yyyy");
//Resultado: 26/10/2018
Formatear horas
Así como podemos definir el formato de las fechas podemos obtener solo las horas y establecer su formato.
Utilizando la fecha declarada al inicio del post obtengamos una fecha en 24 hrs y otra en 12 hrs (AM y PM).
//Hora en 24hrs
string fechaSalida4 = fecha.ToString("HH:mm");
//Resultado: 16:30
//Hora con AM o PM
string fechaSalida5 = fecha.ToString("hh:mm tt");
//Resultado: 04:30 p. m.
Podría interesarte Obtener el número de días entre dos fechas en C#
Conclusiones
Existen más opciones de formateo en la pagina de Microsoft de este tema, aquí pudimos ver algunos ejemplos prácticos y más utilizados.
¡Muchas gracias por la información! Me ayudó mucho a comprender mejor la materia!