Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/03/2015, 03:08
Avatar de castilloabril
castilloabril
 
Fecha de Ingreso: abril-2014
Mensajes: 6
Antigüedad: 10 años, 7 meses
Puntos: 0
problema diferencia dias entre fechas

Hola a todos, escribi un codigo para calcular la diferencia de dias entre dos fechas, pero me presenta problemas cuando calculo para dos fechas en particular

Código:
public long diasDifferencia(String fechaInit, String fechaEnd){

String[] dateInit = fechaInit.split("/");
String[] dateEnd = fechaEnd.split("/");

Date dInit = new GregorianCalendar(yInit, Integer.parseInt(dateInit[1])-1, Integer.parseInt(dateInit[0])).getTime();

Date dEnd = new GregorianCalendar(yEnd, Integer.parseInt(dateEnd[1])-1, Integer.parseInt(dateEnd[0])).getTime();


long diff = (dEnd.getTime() - dInit.getTime())/(1000 * 60 * 60 * 24);

return diff;

}
cuando ejecuto el codigo en consola todo marcha bien excepto para marzo y abril:

Código:
System.out.println(diasDifferencia("02/01/2001","02/01/2002"));
// resultado: 365 (bien)

System.out.println(diasDifferencia("02/01/2002","31/03/2002"));
// resultado: 88 (bien)

System.out.println(diasDifferencia("02/01/2002","01/04/2002"));
// resultado: 88 (mal)
El resultado para el "01/04/2002" deberia ser 89 y lo toma como si fuera el ultimo dia de marzo. No identifico el error.

Gracias de antemano por su ayuda.