Получить данные за последние три года,
Я пытаюсь загрузить данные в течение последних трех лет. Я хочу получить данные между текущей датой и прошлыми 3 годами назад.
например:- С 19.01.2009 ДО текущего времени (19.01.2012)
Я получаю текущее время, как показано ниже.
String date= DateFormat.getDateInstance().format(new Date());
Может кто-нибудь сказать, пожалуйста, как это сделать? Если бы вы работали с примерами, это была бы реальная помощь!
2 ответа
Решение
Вы можете использовать календарь add()
Calendar cal = Calendar.getInstance();
SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
Log.d("current date",dateFormat.format(cal.getTime()));
cal.add(Calendar.YEAR, -3);
Log.d("3 years previous date",dateFormat.format(cal.getTime()));
ВЫХОД
01-19 05:34:52.148: DEBUG/current date(556): 19/01/2012
01-19 05:34:52.148: DEBUG/3 years previous date(556): 19/01/2009
В чем вопрос? Как получить дату на 3 года раньше? Тогда этот код будет полезен:
Calendar c = Calendar.getInstance();
c.setTimeInMillis(System.currentTimeMillis());
//set up time to the last minute of today
c.set(Calendar.HOUR, 23);
c.set(Calendar.MINUTE, 59);
c.set(Calendar.SECOND, 59);
long to = c.getTimeInMillis();// end point of period
c.add(Calendar.YEAR, -1 * yearCount);
long since = c.getTimeInMillis();//start point of period