В настоящее время у меня есть ArrayList
, заполненный датами в формате 2012-06-19
, и я пытаюсь добавить их все в массив из Date
.Как преобразовать строку в дату Java
Это часть кода, который не удается мне,
listIterator = dateValues.listIterator();
Date [] dates = new Date[dateValues.size()];
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
int i = 0;
try{
while(listIterator.hasNext())
{
//System.out.println(listIterator.next().toString());
dates[i] = dateFormat.parse(listIterator.next().toString());
i++;
}
for(i = 0; i < dates.length;i++)
{
System.out.println(dates[i]);
}
}
catch(Exception e){e.printStackTrace()};
}
Линия
//System.out.println(listIterator.next().toString());
напечатает каждую дату в ArrayList. Вывод выглядит,
2007-09-07
2007-09-07
2007-10-05
2007-10-05
2007-10-05
2007-10-05
2007-10-05
но моя dateFormat
линия никогда не добавляет каких-либо значений dates[]
. Любая помощь будет оценена по достоинству.
И нет, это не домашнее задание.
Можете ли вы привести пример из строк, которые вы имеете в dateValues? – noShowP
Я сомневаюсь, что это исключение, которое поймано и осталось незамеченным. Проверьте формат String –
Вы должны ** НИКОГДА ** не поймать исключение и игнорировать его, если у вас нет веской причины. По крайней мере, распечатайте его. –