关于nstimeinterval的信息
如何将 NSTimeInterval 转换为 int
解决方法
直接赋值:
NSTimeInterval interval = 1002343.5432542;
NSInteger time = interval;
//time is now equal to 1002343
NSTimeInterval 是双重的所以如果你将它分配直接给 NSInteger (或 int,如果你愿意的话) 它会工作。这将切断时间精确到秒。
如果你想要舍入到最接近的秒 (而不能切断) 你可以使用圆才使分配:
NSTimeInterval interval = 1002343.5432542;
NSInteger time = round(interval);
//time is now equal to 1002344
iOS字符串string时间和NSTimeInterval时间戳转换
//时间格式
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"MMM dd,yyyy HH:mm tt"];
//时间字符串NSDate
NSDate *date = [formatter dateFromString:string];
//NSDate转时间字符串
NSString *dateString = [formatter stringFromDate:date];
//时间转时间戳
NSTimeInterval interval = [date timeIntervalSince1970];
//时间戳转时间
date = [NSDate dateWithTimeIntervalSince1970:interval];
NSTimeINterval返回值是什么类型
解决方法
直接赋值:
NSTimeInterval interval = 1002343.5432542;
NSInteger time = interval;
//time is now equal to 1002343
NSTimeInterval 是双重的所以如果你将它分配直接给 NSInteger (或 int,如果你愿意的话) 它会工作。这将切断时间精确到秒。
如果你想要舍入到最接近的秒 (而不能切断) 你可以使用圆才使分配:
NSTimeInterval interval = 1002343.5432542;
NSInteger time = round(interval);
//time is now equal to 1002344