在iOS中将date转换为时间戳
你如何将任何给定的date转换为毫秒? 例如,2014-01-23到时间戳转换。
NSDate *date = [dateFormatter dateFromString:@"2014-01-23"]; NSLog(@"date=%@",date); NSTimeInterval interval = [date timeIntervalSince1970]; NSLog(@"interval=%f",interval); NSDate *methodStart = [NSDate dateWithTimeIntervalSince1970:interval]; [dateFormatter setDateFormat:@"yyyy/mm/dd "]; NSLog(@"result: %@", [dateFormatter stringFromDate:methodStart]);
产出成果:1970/30/01
尝试一下。 “mm”代表分钟,“MM”代表月份。
NSDateFormatter * dateFormatter = [[NSDateFormatter alloc] init] ; [dateFormatter setDateFormat:@"yyyy-MM-dd"] ; NSDate *date = [dateFormatter dateFromString:@"2014-01-23"] ; NSLog(@"date=%@",date) ; NSTimeInterval interval = [date timeIntervalSince1970] ; NSLog(@"interval=%f",interval) ; NSDate *methodStart = [NSDate dateWithTimeIntervalSince1970:interval] ; [dateFormatter setDateFormat:@"yyyy/MM/dd "] ; NSLog(@"result: %@", [dateFormatter stringFromDate:methodStart]) ;
迅速
将当前date/时间转换为时间戳:
// current date and time let someDate = Date() // time interval since 1970 let myTimeStamp = someDate.timeIntervalSince1970
也可以看看
- 在Swift中将date转换为整型
- 在Swift中创build一个date和时间
- 如何获取当前时间作为date时间
NSTimeinterval实际上是一个双重的,从特定的date(在你的情况下,1970年开始)
注意:UNIX时间戳格式包含13个数字,所以我们需要一个1000乘法的结果。 时间戳必须是UTC ZONE而不是我们的本地时区。
- (void)GetCurrentTimeStamp { NSDateFormatter *objDateformat = [[NSDateFormatter alloc] init]; [objDateformat setDateFormat:@"yyyy-MM-dd"]; NSString *strUTCTime = [self GetUTCDateTimeFromLocalTime:@"2014-01-23"]; NSDate *objUTCDate = [objDateformat dateFromString:strUTCTime]; long long milliseconds = (long long)([objUTCDate timeIntervalSince1970] * 1000.0); NSLog(@"Local Time = %@---- UTC = %@ ----- TimeSatmp = %ld ---- TimeStamp = %lld",strTime,strUTCTime,unixTime,milliseconds); } - (NSString *) GetUTCDateTimeFromLocalTime:(NSString *)IN_strLocalTime { NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyy-MM-dd"]; NSDate *objDate = [dateFormatter dateFromString:IN_strLocalTime]; [dateFormatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]]; NSString *strDateTime = [dateFormatter stringFromDate:objDate]; return strDateTime; }
[date1 timeIntervalSinceDate:date2]
将从两个NSDate对象返回秒。
double seconds = [date1 timeIntervalSinceDate:date2]; double milliSecondsPartOfCurrentSecond = seconds - [seconds intValue];
milliSecondsPartOfCurrentSecond