using System.Globalization;
public static void Main()
private static void CompruebaHora(string horaEntrada)
CultureInfo culture = CultureInfo.CurrentCulture;
if (DateTime.TryParseExact(horaEntrada,"hh:mm tt", culture,DateTimeStyles.None, out hora))
Console.WriteLine("El formato es hh:mm tt: " + hora.ToString("HH:mm"));
else if (DateTime.TryParseExact(horaEntrada,"HH:mm", culture,DateTimeStyles.None, out hora))
Console.WriteLine("El formato es HH:mm: " + hora.ToString("HH:mm"));
Console.WriteLine("Hora no valida");
private static void CompruebaHora2(string horaEntrada)
CultureInfo culture = CultureInfo.CurrentCulture;
var formatosValidos = new string[] {"hh:mm tt", "HH:mm"};
if (DateTime.TryParseExact(horaEntrada,formatosValidos, culture,DateTimeStyles.None, out hora))
Console.WriteLine("El formato es valido: " + hora.ToString("HH:mm"));
Console.WriteLine("El formato no es valido");