Trabalhando com datas

4 respostas
K

Amigos, como fazer para subtrair um dia de uma determinada data(hoje)?
estou tentando da seguinte maneira mas o resultado é a mesma data:

Calendar cl = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat(“dd/MM/yyyy”);

System.out.println("Antes: "+ sdf.format(cl.getTime()) );

cl.getTime().setTime(cl.getTime().getTime() - 24<em>60</em>60*1001);

System.out.println("Depois: "+ sdf.format(cl.getTime()) );

valeu galera

4 Respostas

C
Calendar calendarA = Calendar.getInstance();

Calendar calendarB = Calendar.getInstance();

int multiplier;

if (b.getTime() - a.getTime() > 0) {

multiplier = -1;

calendarA.setTime(b);

calendarB.setTime(a);

} else {

multiplier = 1;

calendarA.setTime(a);

calendarB.setTime(b);

}
int years = calendarA.get(Calendar.YEAR) - calendarB.getCalendar.YEAR);
    int months = calendarA.get(Calendar.MONTH) - calendarB.get(Calendar.MONTH);
    int days = calendarA.get(Calendar.DAY_OF_MONTH) - calendarB.get(Calendar.DAY_OF_MONTH);
    if (years > 0 && (months < 0 || (months == 0 && days < 0))) {
        years -= 1;
    }
    return years * multiplier;
velo

dah uma olhada em GregorianCalendar

VELO

Mantu

Tenta usar o método add da classe Calendar. Isso aqui é um texto que eu tirei da API desta classe:

Veja a sintaxe em
http://java.sun.com/j2se/1.5.0/docs/api/java/util/Calendar.html#add(int,%20int)

thiago.correa

http://www.guj.com.br/posts/list/16631.java

Criado 13 de abril de 2006
Ultima resposta 13 de abr. de 2006
Respostas 4
Participantes 5