我面临一个NSDate
对象的奇怪问题,我想从两个日期之间的核心数据中获取记录。日期不同时似乎没问题,但是当我尝试从相同日期获取时,它什么也没给我。我尝试使用上面的代码设置两个日期的时间:
// This is for starting date
NSCalendar *calendar = [NSCalendar autoupdatingCurrentCalendar];
NSDateComponents *dateComps = [calendar components:NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit fromDate:date1];
[dateComps setHour:00];
[dateComps setMinute:00];
[dateComps setSecond:00];
NSDate *itemDate = [calendar dateFromComponents:dateComps];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd hh:mm a"];
NSString *fdate=[formatter stringFromDate:itemDate];
在这里,fdate
给我我想要的字符串形式的日期(2012-12-11 12:00 AM
)。但是当我尝试NSDate
使用上面的代码将其转换为时;
NSDate *dt=[formatter dateFromString:fdate];
上面的输出(2012-12-10 18:30:00 +0000
)完全破坏了我的努力。请建议我必须做些什么来阻止这种情况。