Comparar data atual com Data + 3 dias

Boa tarde Galera …

Putz … Estou ficando meio loco com isso. Olha o que acontece.

  • Peguei uma data, que me passam numa string, ou seja, pra mim chega como “dd/MM/yyyy”. OK!
    String strData = “dd/MM/yyyy”;
  • Dai eu pego cada pedaço em variaveis string.
    int dia = Integer.parseInt(String.valueOf( strData ).substring(0, 2));
    int mes = Integer.parseInt(String.valueOf( strData ).substring(3, 5));
    int ano = Integer.parseInt(String.valueOf( strData ).substring(6, 10));
  • Dai eu crio uma variavel Calendar.
    Calendar ultData = Calendar.getInstance();
  • Dai eu seto essa ultData com a data passada em String.
    ultData.set( ano, mes, dia );
  • Dai eu preciso somar 3 dias.
    ultData.add(Calendar.DATE, 3 );

:arrow: A pergunta é: Como ver se a Data Atual é maior do que a ultData ???

Eu fiz assim:

if( ultData.getTime().after(Calendar.getInstance().getTime() )) {

}

Isso esta certo ???

É por que não esta funcionando direito … pois testando varias vezes com a mesma ultData, hora funciona com if = true e hora não funciona com if = false.

:lol: Alguém, por favor, poderia me dizer se essa maneira esta correta ???

Obrigadaum … :smiley:

Veja esse exemplo:

// TesteCal.java
import java.util.*;

public class TesteCal {

    public static void main(String[] args) {

        int dia = 31;
        int mes = 5;   // maio
        int ano = 2004;

        GregorianCalendar cal = new GregorianCalendar(ano, mes-1, dia);
        System.out.println("cal = " + cal);

        cal.add(Calendar.DATE, 1);
        System.out.println("cal = " + cal);

        GregorianCalendar cal2 = new GregorianCalendar(ano, mes-1, dia);
        System.out.println("cal2 = " + cal2);

        if (cal2.before(cal))
             System.out.println("cal2 < cal... OK");

        if (cal.after(cal2))
             System.out.println("cal > cal2... OK");

    }

}

Lembre-se de subtrair 1 do mês que estiver ajustando na data, isso pq a GregorianCalendar() trata JANEIRO=0 e DEZEMBRO=11…; :?

OK !! Deu certim …

Muito obrigado.

Agora me deparei com um problema.

:arrow: Como saber quantos dias existem entre uma data e outra.
Por exemplo.
Quantos dias tem entre 01/02/2004 e 15/02/2004 ???

poderia me ajudar ???

Obrigadoúúú’

dá uma olhada no java almanac

Obrigadaum … deu certinho …

Aliás, eu não conhecia esse site … Vai me ajudar bastante …

Obrigadaum … 8)