为什么这给了我错误的日期?错误的日期从NSDateComponents回来
NSCalendar *myCalendar = [[NSCalendar alloc] initWithCalendarIdentifier: NSGregorianCalendar];
NSDateComponents* components = [myCalendar components:NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit fromDate:[NSDate date]];
[components setYear:2013];
[components setMonth:06];
[components setDay:28];
[components setHour:5];
[components setMinute:00];
NSDate *startDate1 = [myCalendar dateFromComponents:components];
NSLog(@"start date is %@",startDate1);
起始日期是2013年6月28日03:00:00 +0000
编辑
我想要做的是以下几点。我有一个开始和结束。
例如:
起始日期是2013年6月28日05:00
结束日期为:2013年6月29日04:59
然后我想检查当前日期介于开始日期和结束日期之间。我正在使用以下内容。
NSComparisonResult result1 = [now compare:startDate1];
NSComparisonResult result2 = [now compare:endDate1];
if (result2 == NSOrderedSame && result1 == NSOrderedSame) {
NSLOG(@"OKE!");
}
您的日期值取决于时区。将其更改为您当地的时区将解决您的问题。设置 - 常规 - 日期和时间。 – brianLikeApple 2013-05-13 11:17:46