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;
}