本人搜索了很多關于iOS中時間與時間戳的相互轉化的資料,下面我來記錄一下,有需要了解iOS中時間與時間戳的相互轉化的朋友可參考。希望此文章對各位有所幫助。
//獲取當前系統時間的時間戳#pragma mark - 獲取當前時間的 時間戳+(NSInteger)getNowTimestamp{ NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateStyle:NSDateFormatterMediumStyle]; [formatter setTimeStyle:NSDateFormatterShortStyle]; [formatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"]; // ----------設置你想要的格式,hh與HH的區別:分別表示12小時制,24小時制 //設置時區,這個對于時間的處理有時很重要 NSTimeZone* timeZone = [NSTimeZone timeZoneWithName:@"Asia/Beijing"]; [formatter setTimeZone:timeZone]; NSDate *datenow = [NSDate date];//現在時間 NSLog(@"設備當前的時間:%@",[formatter stringFromDate:datenow]); //時間轉時間戳的方法: NSInteger timeSp = [[NSNumber numberWithDouble:[datenow timeIntervalSince1970]] integerValue]; NSLog(@"設備當前的時間戳:%ld",(long)timeSp); //時間戳的值 return timeSp;} //將某個時間轉化成 時間戳#pragma mark - 將某個時間轉化成 時間戳+(NSInteger)timeSwitchTimestamp:(NSString *)formatTime andFormatter:(NSString *)format{ NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateStyle:NSDateFormatterMediumStyle]; [formatter setTimeStyle:NSDateFormatterShortStyle]; [formatter setDateFormat:format]; //(@"YYYY-MM-dd hh:mm:ss") ----------設置你想要的格式,hh與HH的區別:分別表示12小時制,24小時制 NSTimeZone* timeZone = [NSTimeZone timeZoneWithName:@"Asia/Beijing"]; [formatter setTimeZone:timeZone]; NSDate* date = [formatter dateFromString:formatTime]; //------------將字符串按formatter轉成nsdate //時間轉時間戳的方法: NSInteger timeSp = [[NSNumber numberWithDouble:[date timeIntervalSince1970]] integerValue]; NSLog(@"將某個時間轉化成 時間戳&&&&&&&timeSp:%ld",(long)timeSp); //時間戳的值 return timeSp;} //將某個時間戳轉化成 時間#pragma mark - 將某個時間戳轉化成 時間+(NSString *)timestampSwitchTime:(NSInteger)timestamp andFormatter:(NSString *)format{ NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateStyle:NSDateFormatterMediumStyle]; [formatter setTimeStyle:NSDateFormatterShortStyle]; [formatter setDateFormat:format]; // (@"YYYY-MM-dd hh:mm:ss")----------設置你想要的格式,hh與HH的區別:分別表示12小時制,24小時制 NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"Asia/Beijing"]; [formatter setTimeZone:timeZone]; NSDate *confromTimesp = [NSDate dateWithTimeIntervalSince1970:timestamp]; NSLog(@"1296035591 = %@",confromTimesp); NSString *confromTimespStr = [formatter stringFromDate:confromTimesp]; //NSLog(@"&&&&&&&confromTimespStr = : %@",confromTimespStr); return confromTimespStr;}
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。
新聞熱點
疑難解答