Я новичок в программировании на iOS и много искал способ сравнить «сегодня» (NSDate) с форматированной строковой датой (дд / мм / гггг).
Я нашел несколько хороших ответов с NSDate earlierDate
, laterDate
и т. Д., Но, похоже, код не работает в моем проекте.
вот оно:
// [book quandd] is the string : 25/02/2011 (or whatever dd/MM/yyyy date)
NSDate *today = [NSDate date];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"dd/MM/yyyy"];
if ( [[dateFormat dateFromString:[book quandd]] isEqualToDate:today]) {
NSLog(@"Dates are equal");
}
if ( [[dateFormat dateFromString:[book quandd]] earlierDate:today]) {
NSLog(@"earlier");
}
if ( [[dateFormat dateFromString:[book quandd]] laterDate:today]) {
NSLog(@"later");
}
Что бы я ни делал и независимо от даты в [book quandd]
, консоль всегда пишет «раньше» и «позже», как если бы они были позже и раньше одновременно, чем сегодня .
Откуда взялась эта "ошибка"?
Есть ли какой-нибудь простой / легкий способ сравнить сегодняшнюю дату с 26/02/2011 , например?