Olá pessoALL!
Seguinte, preciso recuperar o mês anterior da data atual, com primeiro dia e último dia do mês anterior.
So que não sei se mês anterior termina com 29, 30 ou 31. Vou dá um exemplo p ficar mais fácil de entender
dataAtual = 22/08/2011
Preciso recuperar as seguintes datas:
dataInicioMesAnterior = 01/07/2011
dataFinalMesAnterior = 31/07/2011
Vlw!
nel
Agosto 22, 2011, 10:09am
#2
Oi!
O primeiro dia é sempre um né? Pois eu não conheço calendário que comece com 02, por exemplo.
O último dia do mês pode ser assim:
[code]Calendar c = Calendar.getInstance();
c.add(Calendar.MONTH, -1);
int lastDay = c.getMaximum(Calendar.DAY_OF_MONTH);
System.out.println(lastDay);[/code]
Abraços.
Segue, o ‘date’ é a data atual
public static Date getPrimeiroDiaDoMesAnterior(Date date) {
GregorianCalendar gc = getDateCalendar(date);
gc.add(Calendar.MONTH, -1);
gc.set(Calendar.DAY_OF_MONTH, 1);
return gc.getTime();
}
public static Date getUltimoDiaDoMesAnterior(Date date) {
GregorianCalendar gc = getDateCalendar(date);
gc.add(Calendar.MONTH, -1);
gc.set(Calendar.DAY_OF_MONTH, gc.getActualMaximum(Calendar.DAY_OF_MONTH));
return gc.getTime();
}