duvida java - GregorianCalendar

Fork

What is folding?
Boas,

eu sei que isto deve ser mesmo basico, mas nao encontro solução.

eu quero calcular a diferença entre duas datas definidas em dias.

ja converti ambas as datas para milisegundos no tipo long. calculei a diferença entre ambos os longs. E agora? como posso converter o long num int com a diferença de dias?
 
Assim muito rapidamente encontrei isto nos meus apontamentos:

Código:
public long dist (GregorianCalendar i, GregorianCalendar f) {
long x = i.getTimeInMillis();
long y = f.getTimeInMillis();
return ((y-x)/1000/3600/24);
}

public int num_dias()
{
return ((int) this.dist(this.data,new GregorianCalendar()));
}

Não sei se é isto que procuras, mas lembrei-me de ter ouvido falar de algo do género nas aulas. Não sou muito bom em JAVA para já, por isso não te posso dizer muito mais!
 
Obrigado pela ajuda, mas a unica solução que consegui tirar dai foi usar o:
XXX.get(GregorianCalendar.DAY_OF_YEAR)-YYY.get(GregorianCalendar.DAY_OF_YEAR)

mas agora pergunto-me se estivermos no mesmo dia, mas em anos diferentes, exemplo 01/01/2007 e 01/01/2006 o resultado qual vai ser? 365 (correcto) ou 0 (errado)
 
Back
Topo