时间戳转换成时间

今天在检查APP消息的时候,突然发现怎么所有消息的都是在分钟数都是02 一看肯定不对。然后打开和PC 端 对你了 一下 ,发现自己的时间果然不对。

+(NSString *)convertTimesInterval:(NSString *)timeIntervalStr
{
    
    NSTimeInterval time=[timeIntervalStr doubleValue];jr
    NSDate *detaildate=[NSDate dateWithTimeIntervalSince1970:time];
    
    NSLog(@"date:%@",[detaildate description]);
    
    //实例化一个NSDateFormatter对象
     NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
    //设定时间格式,这里可以设置成自己需要的格式
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm"];
    NSString *currentDateStr = [dateFormatter stringFromDate: detaildate];
    return currentDateStr;
    
 
//    NSDateFormatter * formatter = [[NSDateFormatter alloc ] init];
//错误的格式
//    [formatter setDateFormat:@"YYYY-MM-dd  HH:MM:ss"];
//    NSDate *date = [NSDate dateWithTimeIntervalSince1970:[timeIntervalStr doubleValue]];
//    NSString *timeString = [formatter stringFromDate:date];
//    return timeString;
}

可以看懂是因为我NSDateFormatter 的格式有问题
下面经常用到formatter 格式

d 月中的某一天。一位数的日期没有前导零。
dd 月中的某一天。一位数的日期有一个前导零。
ddd 周中某天的缩写名称,在 AbbreviatedDayNames 中定义。
dddd 周中某天的完整名称,在 DayNames 中定义。
M 月份数字。一位数的月份没有前导零。
MM 月份数字。一位数的月份有一个前导零。
MMM 月份的缩写名称,在 AbbreviatedMonthNames 中定义。
MMMM 月份的完整名称,在 MonthNames 中定义。
y 不包含纪元的年份。不具有前导零。
yy 不包含纪元的年份。具有前导零。
yyyy 包括纪元的四位数的年份。
gg 时期或纪元。
h 12 小时制的小时。一位数的小时数没有前导零。
hh 12 小时制的小时。一位数的小时数有前导零。
H 24 小时制的小时。一位数的小时数没有前导零。
HH 24 小时制的小时。一位数的小时数有前导零。
m 分钟。一位数的分钟数没有前导零。
mm 分钟。一位数的分钟数有一个前导零。
s 秒。一位数的秒数没有前导零。
ss 秒。一位数的秒数有一个前导零。
f 秒的小数精度为一位。其余数字被截断。

你可能感兴趣的:(时间戳转换成时间)