yyyy válido valor reconocer puede parseexact horas formato ejemplos convert como cadena c# datetime cultureinfo

c# - válido - DateTime.ParseExact() no asimila valores de hora de 24 horas?



formato 24 horas c# (3)

Esta línea de código:

DateTime dt = DateTime.ParseExact(time, "hh:mm", CultureInfo.InvariantCulture);

analiza un valor de "tiempo" de "12:45" bien, pero lanza una excepción de "13:00"

¿Debo usar algún otro valor de CultureInfo, o debo agregar un "pm" a los valores de hora superiores a 12, o ...?

El mensaje de error es: System.FormatException no se manejó Mensaje = La cadena no se reconoció como un DateTime válido.


"hh" es el formato de reloj de 12 horas (01 a 12). Necesitas usar "HH" para un reloj de 24 horas.

DateTime dt = DateTime.ParseExact(time, "HH:mm", CultureInfo.InvariantCulture);


Aunque Hans ya respondió su pregunta en la sección de comentarios, Here hay un enlace de MSDN que describe todo tipo de formatos de fecha utilizados con el método DateTime.ParseExact .


Prueba esto:

DateTime dt = DateTime.ParseExact(time, "u", CultureInfo.InvariantCulture);

"u" indica un formato de ordenamiento universal.