Validar una cadena de fecha en C#
Esta publicación discutirá cómo validar una cadena de fecha en C#.
los DateTime.TryParseExact() método es el enfoque recomendado para convertir la representación de cadena de una fecha y hora a su DateTime
equivalente. Devuelve un valor booleano que indica si la cadena especificada se convirtió correctamente o no.
El siguiente ejemplo ilustra el uso simple de la TryParseExact()
método.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
using System; using System.Globalization; public class Example { public static void Main() { string dateString = "06/24/2018 10:00:00 AM -05:00"; CultureInfo enUS = new CultureInfo("en-US"); DateTime dateValue; if (DateTime.TryParseExact(dateString, "MM/dd/yyyy hh:mm:ss tt zzz", enUS, DateTimeStyles.None, out dateValue)) { Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, dateValue.Kind); } else { Console.WriteLine("'{0}' is not a date or is in invalid format.", dateString); } } } |
Resultado:
Converted ’06/24/2018 10:00:00 AM -05:00′ to 24-06-2018 08:30:00 PM (Local).
Para analizar una cadena que representa UTC, puede usar el especificador de formato de ida y vuelta (O, o).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
using System; using System.Globalization; public class Example { public static void Main() { string dateString = "2018-06-24T10:00:00.0805924Z"; DateTime dateValue; if (DateTime.TryParseExact(dateString, "o", CultureInfo.InvariantCulture, DateTimeStyles.RoundtripKind, out dateValue)) { Console.WriteLine("Converted '{0}' to {1} ({2}).", dateString, dateValue, dateValue.Kind); } else { Console.WriteLine("'{0}' is not in an acceptable format.", dateString); } } } |
Resultado:
Converted ‘2018-06-24T10:00:00.0805924Z’ to 24-06-2018 10:00:00 AM (Utc).
Se trata de validar una cadena de fecha en C#.