Ответ 1
Совершенно верно. Угадав формат из вашей строки, вы можете использовать ParseExact
string format = "ddMMyyyyHHmm";
DateTime dt = DateTime.ParseExact(value, format, CultureInfo.InvariantCulture);
или TryParseExact
:
DateTime dt;
bool success = DateTime.TryParseExact(value, format,
CultureInfo.InvariantCulture, DateTimeStyles.None, out dt);
Последний вызов просто вернет false
при сбое разбора, вместо того, чтобы бросать исключение - если у вас могут быть плохие данные, которые не должны приводить к сбою общей задачи (например, пользовательский ввод, и вы просто хотите вызвать их), то это лучший вызов для использования.
РЕДАКТИРОВАТЬ. Подробнее о деталях строки формата см. "Пользовательские строки формата даты и времени" в MSDN.