我遇到一个NSDate
对象的奇怪问题,我想从两个日期之间的Core Data中获取记录。当日期不同但是当我试图从相同的日期获取它似乎没有给我任何东西时似乎没关系。我尝试使用上面的代码设置两个日期的小时数:
// 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
)彻底摧毁了我的努力。请建议我要做些什么来阻止这一点。