67 votos

Hora de DateTime? en formato de 24 horas

Así que tengo este DateTime? y lo que quiero hacer es obtener la hora, pero la muestra en formato de 24 horas.
Por ejemplo:
Si la hora es de 2:20:23 pm quiero convertirlo a 14:20 y eso es todo.

Estoy trabajando con Visual C#. Alguna idea por favor, gracias.

Tengo algo como esto

public static string FormatearHoraA24(DateTime? fechaHora)
    {
        if (!fechaHora.HasValue)
            return "";

        string retornar = "";
          //here goes what i need
    }

101voto

vtortola Puntos 6351
return fechaHora.Value.ToString("HH:mm");

58voto

Manish Basantani Puntos 4347
date.ToString("HH:mm:ss"); // for 24hr format
date.ToString("hh:mm:ss"); // for 12hr format, it shows AM/PM

Consulte este enlace para otros Formateadores en DateTime.

18voto

Anthony Pegram Puntos 58528

Uso date.ToString("HH:mm");

9voto

Dan Tao Puntos 60518

El uso de ToString("HH:mm") sin duda le da lo que quiere, como una cadena.

Si desea que la corriente de la hora/minuto como los números, la manipulación de cadenas no es necesario; se puede utilizar la TimeOfDay propiedad:

TimeSpan timeOfDay = fechaHora.TimeOfDay;
int hour = timeOfDay.Hours;
int minute = timeOfDay.Minutes;

4voto

Miky Dinescu Puntos 22380

Intente esto:

//String.Format("{0:HH:mm}", dt);  // where dt is a DateTime variable

public static string FormatearHoraA24(DateTime? fechaHora)
{
    if (!fechaHora.HasValue)
        return "";

    return retornar = String.Format("{0:HH:mm}", (DateTime)fechaHora);
}

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X