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;

}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM