Eai gente, seguinte, tenho dois Date, e quero saber a diferença em dias entre esses objetos. Sei fazer o cálculo trabalhando com o getTime() do Date, mas não queria fazer calculeira em cima de long, e sim gostaria de achar algo na API que fizesse isso automágico pra mim, dado os objetos. Procurei na GregorianCalendar mas não achei nada, alguém pode ajudar?
public final long getDateDiff(Timestamp dataSubtracao) {
// Monta data finalGregorianCalendarcalendarioDataFinal=newGregorianCalendar(dataHora.get(Calendar.YEAR),dataHora.get(Calendar.MONTH),dataHora.get(Calendar.DAY_OF_MONTH));// Monta data inicialGregorianCalendardataInicial=newGregorianCalendar();dataInicial.setTimeInMillis(dataSubtracao.getTime());GregorianCalendarcalendarioDataInicial=newGregorianCalendar(dataInicial.get(Calendar.YEAR),dataInicial.get(Calendar.MONTH),dataInicial.get(Calendar.DAY_OF_MONTH));// Calcula a diferença entre a data final menos a iniciallongdiferenca=calendarioDataFinal.getTimeInMillis()-calendarioDataInicial.getTimeInMillis();// Converte a diferença de milesegundos para minutos longminutos=diferenca/(MILESEGUNDOS*SEGUNDOS);// Converte a diferença de minutos para dias longdias=minutos/MINUTOS;returndias;}
[]'s
Paula
M
matheusPJ
Oi Paula, obrigado pela resposta, mas, como comentei, o cálculo com time in millis eu sei fazer, e é exatamente isso que eu não queria. O que quero é achar alguma API que faça isso por mim, onde eu passe as datas e me retorne, ou algo parecido, mas sem eu ter que fazer os cálculos, por questões de simplifcação de código e clareza.
opa !!!
vivendo e aprendendo !!!
depois dessa, fiquei até com vergonha do meu código, heheheheh.
mas não tem problema não, da próxima vez eu já uso esse framework ai.
vlw !!
R
root_
Utilizando a nova API de datas do java fica um exemplo abaixo:
LocalDatedata1=//Data1;LocalDatedata2=//data2;Periodp=Period.between(data1,data2);System.out.println("DIFERENCA EM DIAS: "+p.getDays());