У меня есть текстовое поле, которое принимает минуты.
Это значение будет сохранено в переменной - textBoxVal
У меня также есть даты, сохраненные в строковом массиве - workDate
, где каждый элемент имеет формат гггг-мм-дд ЧЧ: мм: сс
Требуется добавить значение textBoxVal к каждому элементу в строковом массиве и сохранить новое значение в массиве дат - newWorkDate
Например:
textBoxVal = 60
workDate[0] = "2012-02-12 09:00:00.0"
So, newWorkDate[0] should be 2012-02-12 10:00:00.0
Это то, что я имею до сих пор -
int textBoxVal = 0;
ArrayList<String> workDate = new ArrayList<String>();
Date[] newParsedWorkDate = new Date[10];
Date[] newWorkDate = new Date[10];
textBoxVal = getTextBoxValue();
for (int i=0; i< cntr; i++){
workDate[i] = getWorkDate(i);
newParsedWorkDate[i] = DateHelper.parseDate (workDate[i], "yyyy-MM-DD HH:mm:ss"); //Converting string to datetime
newWorkDate[i] = DateHelper.addMinutes(newParsedWorkDate[i], textBoxVal);
}
Проблема здесь в том, что workDate
это "2012-02-12 09: 00: 00.0", newWorkDate
это "2012-01-12 10: 00: 00.0", т.е. он добавляет textBoxVal, но устанавливает дату в предыдущий день.
Пожалуйста, помогите мне понять, где мой код неверен. Спасибо!
РЕШЕНИЕ:
Используется "yyyy-MM-dd HH:mm:ss"
вместо
"yyyy-MM-DD HH:mm:ss"