Это неверно:
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-DD");
Date todaydate = format.parse(new Date().toString());
Выражение new Date().toString()
не возвращает строку, которая соответствует формату yyyy-MM-DD
, поэтому, если вы попытаетесь проанализировать его, как если бы он был отформатирован таким образом, вы получите исключение.
Если вам нужен объект Date
, представляющий текущую дату и время, просто сделайте следующее:
Date todaydate = new Date();
Нет необходимости преобразовывать объект Date
в строку и пытается ее проанализировать.
Если вам нужна строка с текущей датой в формате yyyy-MM-dd
, сделайте следующее:
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String todaydate = format.format(new Date());
Примечание: вы использовали DD
в строке формата даты, но, скорее всего, вы имели в виду dd
. См. Документацию API для SimpleDateFormat
.