总结一些关于NSDate转化字符串/时间戳一些常见的使用方法
1.NSDate与时间戳之间的相互转化
// mark -- NSDate转化为时间戳
- (NSString *)getTimeStampFromDate:(NSDate*)date{
// *1000 是精确到毫秒,不乘就是精确到秒
NSTimeInterval timeInterval = [date timeIntervalSince1970];
return [NSString stringWithFormat:@"%.0f", timeInterval];
}
// mark -- 时间戳转化NSDate
- (NSDate*)getDateFromTimeStamp:(NSString*)timeStamp{
//注意 /1000 是服务器返回13位为精确到毫秒的 否则不用 /1000
CGFloat time = [timeStamp doubleValue];
return [NSDate dateWithTimeIntervalSince1970:time];
}
2.NSDate与时间字符串之间的相互转化
// mark -- NSDate转化时间字符串
-(NSString *)getDateStringFromDate:(NSDate*)date;{
//实例化一个NSDateFormatter对象
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
//设定时间格式,这里可以设置成自己需要的格式
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
//返回时间字符串
return [dateFormatter stringFromDate:date];
}
// mark -- 时间字符串转化NSDate
-(NSDate*)getDateFromTimeString:(NSString*)timeString;{
//实例化一个NSDateFormatter对象
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
//设定时间格式,这里可以设置成自己需要的格式
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
//返回时间NSDate
return [dateFormatter dateFromString:timeString];
}
// mark -- 获取当前时间字符串
- (NSString*)getCurrentDateString{
//实例化一个NSDateFormatter对象
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
//设定时间格式,这里可以设置成自己需要的格式
[formatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"];
NSDate*currentDate = [NSDate date];
return [formatter stringFromDate:currentDate];
}