Bom dia galera, gostaria de saber como faço pra calcular os dias
entre duas datas, ex:
tenho a data base:07/10/1997 e gostaria de saber quantos dias
passaram eté a data atua 29/01/2007, utilizando Date.
é urgente c alguem puder me ajudar, vlew…
Date
8 Respostas
Date base = //data base
Date hoje= new Date();
long dif = hoje.getTime()-base.getTime();
long dias = dif/(1000L*60*60*24);
É melhor a do JairElton ai mesmo.
rs
Abraço.
Date base = //data base
Date hoje= new Date();
long dif = hoje.getTime()-base.getTime();
long dias = dif/(1000L6060*24);
Cara essa classe Date so trabalho com milessegundos, então como sei
a minha data base que é: 07/10/1997 ??
não entendi esse calculo: long dias = dif/(1000L6060*24) ?
cara c tiver como me ajudar, vlew !!
Foi mal por não grifar o Codigo.
cara pra melhorar aqui, como faço pra converter qualquer data pra milessegundos ??
e me ajude com essa logica
long dias = dif/(1000L6060*24);
tenho que fazer um projetinho aqui e to apanhando pra esse negocio de Data…uheuheuheu
SimpleDateFormat formatador = new SimpleDateFormat("dd/MM/yyyy");
//Transforma uma String em um Date
Date base = formatador.parse("07/10/1997");
Date hoje= new Date();
//Calcula a diferença em milisegundos entre as duas datas
long dif = hoje.getTime()-base.getTime();
//divide a diferença pelo numero de milisegundos de 1 dia, que seria 86400000
long dias = dif/(1000L*60*60*24);
beleza cara ajudou d+,
é que eu to fazendo um boleto bancario, então essa data hoje o cliente
ira digitar a data que ele deseja para vencimento, não é a data atual
ou seja quero criar um Date de acordo com a data escolhida pelo cliente…
saco ???
public void calculaDia(int dia, int mes, int ano)
{
try
{
GregorianCalendar ini = new GregorianCalendar();
GregorianCalendar fim = new GregorianCalendar();
SimpleDateFormat sdf = new impleDateFormat"dd/MM/yyyy");
ini.setTime(sdf.parse("07/10/1997"));//data base
fim.setTime(sdf.parse("dia/mes/ano"));//eu sei que não tem nada a ver mais soh pra vc entender..
float dt1 = ini.getTime().getTime()/24/60/60/1000;
float dt2 = fim.getTime().getTime()/24/60/60/1000;
//float val = (float)(dt1 - dt2).intValue*();
System.out.println(new Float(dt2 - dt1).intValue());
}
catch(ParseException ee)
{
ee.printStackTrace();
}
}
Consegui aqui, valews jairelton…