我正在使用 NSDate ,我使用以下技术仅将其转换为日期:
+ (NSDate *) dateOnly:(NSDate *)date
{
long time = [date timeIntervalSinceReferenceDate];
long timeMod = time % kNumSecondsInDay;
NSTimeInterval newTime = time - timeMod;
return [[NSDate alloc] initWithTimeIntervalSinceReferenceDate:newTime];
}
这给了我预期的结果:
NSLog(@"Due Date:%@", _dueDate);
--> 截止日期:2012-11-21 00:00:00 +0000
但是,当我使用日期格式化程序时,它会给我前一天:
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateStyle:NSDateFormatterShortStyle];
NSString *result = [formatter stringFromDate:_dueDate];
NSLog(@"Result: %@", result);
--> 结果:2012 年 11 月 20 日
是什么赋予了?