olá a todos, estou precisando subtrair duas datas uma é a data de devolução que chamo de data1 e a outra é a data do sistema que chamo de data2, possuo um metodo dataDiff que consegui aqui no guj com um colega, mas quando passo as variaveis para o metodo retornar a diferença de dias ele da um erro que encontrou int e requer java.util.Date como reparo este erro? agradeço ajuda.
//calculando dias de atraso....
//testando data
//comparando...................
dataFormatada = new String(palavra.getDtDev());
DateFormat df = new SimpleDateFormat("dd/MM/yyyy");
try {
data1 = (Date)df.parse(dataFormatada);
} catch (ParseException ex) {
ex.printStackTrace();
}
Date data2= new Date();//pego a data do sistema
DiffData daoDt = new DiffData();
Date dataLow = data1;
Date dataHigh = data2;
//transformando a data paara inteiro
Date nova = daoDt.dataDiff( dataLow, dataHigh);
o metodo para calcular a diferença …
public static int dataDiff(java.util.Date dataLow, java.util.Date dataHigh){
[quote=kaede]olá a todos, estou precisando subtrair duas datas uma é a data de devolução que chamo de data1 e a outra é a data do sistema que chamo de data2, possuo um metodo dataDiff que consegui aqui no guj com um colega, mas quando passo as variaveis para o metodo retornar a diferença de dias ele da um erro que encontrou int e requer java.util.Date como reparo este erro? agradeço ajuda.
//calculando dias de atraso....
//testando data
//comparando...................
dataFormatada = new String(palavra.getDtDev());
DateFormat df = new SimpleDateFormat("dd/MM/yyyy");
try {
data1 = (Date)df.parse(dataFormatada);
} catch (ParseException ex) {
ex.printStackTrace();
}
Date data2= new Date();//pego a data do sistema
DiffData daoDt = new DiffData();
Date dataLow = data1;
Date dataHigh = data2;
//transformando a data paara inteiro
Date nova = daoDt.dataDiff( dataLow, dataHigh);
o metodo para calcular a diferença …
public static int dataDiff(java.util.Date dataLow, java.util.Date dataHigh){
[/quote]
Ok, você precisa da diferença de Dias e é isso que a função dataDiff faz ele retorna para você um inteiro que equivale a diferença de dias.
int iDiferenca = daoDt.dataDiff( dataLow, dataHigh);
[quote=analuiza.fagundes]Estou com este mesmo problema , alguem pode me ajudr ???
Tenho uma data inicial e uma data final , gostaria de calcular o numero de dias entre as duas…
Ah e gostaria de sabe tbm como faço para testar a partir de uma data , qual dia da semana ela representa ?[/quote]
Analuiza, as soluções dadas no seu post não serviram para você? Se não serviram, porque não respondeu por lá mesmo? Dê continuidade ao seu tópico.
keade, já que você está trabalhando com datas, sugiro fortemente que você trabalhe com a biblioteca do JODA-Time. No post da AnaLuiza, postei um exemplo de como fica esse cálculo usando a biblioteca. Veja que fica ridiculamente simples:
LocalTime start = new LocalTime("10:00:00");
LocalTime end = new LocalTime("11:30:00");
Period period = new Period(start, end);
System.out.println("Entre as duas datas há: " + period.getDays() + " dias, "
+ period.getHours() + " horas "
+ period.getMinutes() + " minutos.");
Oi Vinicius, realmente eu estava sem saber como resolver o meu tópico por isso pedi ajda aqui, mas como ninguem ainda tinha me ajudado a resolver procurei tambem em outros lugares e acabei aprendendo, não tinha dado tempo de postar aqui que já tinha resolvido quando vi uma menssagem de nossa colega e resolvi postar o que consegui para ela…desculpe o mal entendido.
Quando a biblioteca do JODA-Time muito legal vou dar uma olhada sim agradeço a sua ajuda pois vou precisar dela abraços Kaede.