2016-05-01 5 views
0

У меня есть строка со значением datetime, поэтому я хочу проверить, что значение всегда соответствует этому формату «yyyy-MM-ddTHH: mm: ss», как я могу это сделать?Как проверить формат даты в строке?

У меня есть этот код, но он всегда бросается правдой.

public Boolean validaFecha(string fecha) 
    { 
     DateTime dDate; 
     Boolean resp = false; 

     if (DateTime.TryParse(fecha, out dDate)) 
     { 
      resp = true; 
     } 

     return resp; 

    } 
+0

Пожалуйста, скажите, что вы не используете это, чтобы проверить ввод для команды sql? –

ответ

2

Вы можете использовать метод DateTime.TryParseExac т и указать формат:

public static Boolean validaFecha(string fecha)  
{ 
    DateTime dDate; 
    return DateTime.TryParseExact(fecha, "yyyy-MM-ddTHH:mm:ss", 
     CultureInfo.InvariantCulture, DateTimeStyles.None, out dDate); 
} 

Пример использования:

bool isValid = validaFecha("2015-01-24T12:15:54"); // Will be true 
0

Использование:

DateTime.TryParseExact метод (String, String, IFormatProvider)

[MSDN Date Time Try Parse Exact][1] 
+0

Можете ли вы привести пример? – checo

+0

Проверьте это: http://stackoverflow.com/questions/11999912/datetime-tryparseexact-rejecting-valid-formats – Avia

Смежные вопросы