Diferença de datas em Java!

Pessoal,

como faço pra calcular a diferença de duas datas? Sei que posso obter o currentTimeinMillis(), que eh um long, dos meu dois objetos Calendar, que representam as duas datas cuja diferença sera calculada. Mas tem como transformar esse long em dias?

Ou tem outa forma de se fazer esse calculo?

Valew pessoal…Abraços e Feliz 2005!

Ó…presente de ano novo…
Um método prontinho:

public long getDiferencaDatas(String dataIni, String dataFim)
{
int diaIni = Integer.parseInt(dataIni.substring(0,2));
int mesIni = Integer.parseInt(dataIni.substring(3,5));
int anoIni = Integer.parseInt(dataIni.substring(6,10)); 
Date ini = new Date(anoIni, mesIni, diaIni);
	
int diaFim = Integer.parseInt(dataFim.substring(0,2));
int mesFim = Integer.parseInt(dataFim.substring(3,5));
int anoFim = Integer.parseInt(dataFim.substring(6,10)); 
Date fim = new Date(anoFim, mesFim, diaFim);
	
long dias = (fim.getTime() - ini.getTime())/86400000L;
	
return dias;
}

Abraço cara e Feliz Ano novo também!