2013-04-19 3 views
0

У меня есть дата, например, напр. текущая дата, которая составляет 19/04/2013Дата наступления даты до заданного количества месяцев с данной даты

И у меня есть количество месяцев, указанных как, например, 10

Я хочу узнать дату падения до 10 месяцев с 19/04/2013.

Как достичь этого в Java?

Например, если я хочу, чтобы выяснить дату до недели, я могу достичь, как показано ниже:

Calendar calendar = Calendar.getInstance(); 
calendar.setTime(myDate); 
calendar.add(Calendar.DAY_OF_YEAR, -7); 
Date newDate = calendar.getTime(); 

Но как найти такой же в течение нескольких месяцев?

ответ

5

Ну, вы могли бы сделать что-то похожее на ваш пример:

Calendar calendar = Calendar.getInstance(); 
calendar.setTime(myDate); 
calendar.add(Calendar.MONTH, -10); 
Date newDate = calendar.getTime(); 

Он будет установлен newDate на дату 10 месяцев до myDate.

2

Использование jodatime это намного проще и многословным:

LocalDate date = LocalDate.parse("19/04/2013", DateTimeFormat.forPattern("dd/MM/yyyy")); 
LocalDate result = date.minus(Months.TEN); 
System.out.println(result.toString("dd/MM/yyyy")); 
Смежные вопросы