我想知道是否有人可以帮助我解决我的方法。我有以下方法,它将 NSDate 对象的秒值清零:
- (NSDate *)dateWithZeroSeconds:(NSDate *)date {
NSTimeInterval time = round([date timeIntervalSinceReferenceDate] / 60.0) * 60.0;
return [NSDate dateWithTimeIntervalSinceReferenceDate:time];
}
问题是在传递日期时,例如:
2011-03-16 18:21:43 +0000
它返回:
2011-03-16 18:22:00 +0000
我不希望发生这种舍入,因为实际指定日期的是用户,所以它需要精确到他们请求的那一刻。
非常感谢任何帮助。
最佳答案
使用地板而不是圆形:
- (NSDate *)dateWithZeroSeconds:(NSDate *)date
{
NSTimeInterval time = floor([date timeIntervalSinceReferenceDate] / 60.0) * 60.0;
return [NSDate dateWithTimeIntervalSinceReferenceDate:time];
}
关于objective-c - NSDate 将秒数归零而不四舍五入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5329985/