Buenas,
Para liarte menos con el manejo de fechas, te recomiendo que uses utilidades varias de los lenguajes OOP para las fechas.
En java tienes Calendar, GregorianCalendar... es cosa de buscar cómo instanciar una de estas clases y obtener resultados...
Por ejemplo, suponiendo una entrada de fecha formato ddmmyyyy (por ejemplo, hoy 27-enero-2013 sería 27010213) puedes hacer esto:
Código:
public int getDateDiff(String d1, String d2){
Long dayT = ((new GregorianCalendar(Integer.parseInt(d1.substring(4, 8),
Integer.parseInt(d1.substring(2, 4) - 1,
Integer.parseInt(d1.substrin(0, 2)).getTimeInMillis() -
new GregorianCalendar(Integer.parseInt(d2.substring(4, 8)),
Integer.parseInt(d2.substring(2, 4)) - 1,
Integer.parseInt(d2.substring(0, 2))).getTimeInMillis())
/ 86400000);
return dayT.intValue();
}
Esta función recibe dos Strings y devuelve un número (int). Éste es el número de días de diferencia entre ambas fechas.
Espero te sirva.
Saludos