Вам необходимо сделать так, чтобы указанный формат даты соответствовал формату фактический данных. В этом случае вам не хватает двоеточий, и вы ожидаете пробелы, которых не существует. Похоже, ваш формат должен быть "yyyyMMdd-HH:mm:ss"
.
Кроме того, перехватывать и регистрировать ошибку, а затем продолжать с текущей датой, как будто ничего не произошло, почти наверняка неправильно. Почему бы просто не объявить, что stringToCalendar
бросает ParseException
?
(Наконец, я лично нахожу, что Joda Time - это намного приятный API для работы с датой и временем. Если вы выполняете значительную работу, подобную этой, вам следует хотя бы посмотреть на это и рассмотрим переключение.)