Si vous souhaitez utiliser les dates Java plutôt que, par exemple, JodaTime, utilisez une balise java.text.DateFormat
pour convertir la chaîne de caractères en date, puis comparez les deux en utilisant .equals :
J'allais oublier : vous devez remettre à zéro les heures, les minutes, les secondes et les millisecondes de la date actuelle avant de les comparer. J'ai utilisé un Calendar
l'objet ci-dessous pour le faire.
import java.text.DateFormat;
import java.util.Calendar;
import java.util.Date;
// Other code here
String toDate;
//toDate = "05/11/2010";
// Value assigned to toDate somewhere in here
DateFormat df = DateFormat.getDateInstance(DateFormat.SHORT);
Calendar currDtCal = Calendar.getInstance();
// Zero out the hour, minute, second, and millisecond
currDtCal.set(Calendar.HOUR_OF_DAY, 0);
currDtCal.set(Calendar.MINUTE, 0);
currDtCal.set(Calendar.SECOND, 0);
currDtCal.set(Calendar.MILLISECOND, 0);
Date currDt = currDtCal.getTime();
Date toDt;
try {
toDt = df.parse(toDate);
} catch (ParseException e) {
toDt = null;
// Print some error message back to the user
}
if (currDt.equals(toDt)) {
// They're the same date
}
0 votes
Votre question initiale était honnêtement dite terrible. Je l'ai améliorée. À l'avenir, essayez d'être aussi clair que possible. Ne répétez pas les choses 3 fois et/ou ne mettez pas les choses en gras inutilement :)
3 votes
Cela pourrait vous aider si vous envisagez d'utiliser la bibliothèque Joda. stackoverflow.com/questions/1439779/
0 votes
JodaTime offre bien plus que l'API de date de Java... joda-time.sourceforge.net . Cela faciliterait grandement cette tâche et les autres tâches liées aux dates.