Web サービスから日付 dd/mm/yyyy hh:mi:ss を取得しています。このように: 10/10/2011 12:00:00
そして、この日付が実際の日付よりも前であるかどうかを確認しようとしていますが、「if」と比較できない場合。
コード:
private static Date formatDate(String data) throws Exception{
if (data == null || data.equals("")){
return null;
}
Date date = null;
try {
DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss");
date = (java.util.Date)formatter.parse(data);
} catch (ParseException e) {
e.printStackTrace();
}
return date;
}
比較する私の方法:
Date planeDate = null;
try {
planeDate = formatDate(date);
} catch (Exception e) {
e.printStackTrace();
}
Calendar currentcal = Calendar.getInstance();
currentcal.set(currentcal.get(Calendar.DAY_OF_MONTH),
currentcal.get(Calendar.MONTH),
currentcal.get(Calendar.YEAR),
currentcal.get(Calendar.HOUR_OF_DAY),
currentcal.get(Calendar.MINUTE),
currentcal.get(Calendar.SECOND));
Date current = currentcal.getTime();
//Always return false
if(planeDate != null){
if(planeDate.before(current) || planeDate.equals(current)){
return true;
} else {
return false;
}
}
return false;