我们在开发过程中经常会使用到时间这个东西。
比如需求是将服务器返回的时间在手机APP上显示
第一种:XXXX年XX月XX日
第二种:XX时XX分XX秒
第三种:XXXX年XX月XX日XX时XX分XX秒
之前写的这种扩展都没有教大家怎么建类扩展,其实很简单,只不过怕有同学不会,所以这次从头到尾,一步不落的截图给大家,代码也附上。
第一步:
第二步:在NSString+DateExtension.h文件提供出方法
Snip20160810_3.png/**
* 将时间戳转换为XXXX年XX月XX日
*
* @param time 时间戳
*
* @return 年:月:日
*/
+ (NSString *)formatYearMonthDay:(NSTimeInterval)time;
/**
* 将时间转换为XX小时XX分XX秒
*
* @param time 时间戳
*
* @return 时:分:秒
*/
+ (NSString *)formatHourMinutesSecond:(NSTimeInterval)time;
/**
* 将时间转换为XXXX年XX月XX分XX时XX分XX秒
*
* @param time 时间戳
*
* @return 年:月:日:时:分:秒
*/
+ (NSString *)formatYearMonthDayHourMinutesSecond:(NSTimeInterval)time;
第三步:在NSString+DateExtension.m文件写这些方法的逻辑
Snip20160810_4.png+ (NSString *)formatYearMonthDay:(NSTimeInterval)time
{
if (time < 0) return @"";
NSDateFormatter *format = [[NSDateFormatter alloc] init];
//注意:这里设置格式:2016:8:10
[format setDateFormat:@"yyyy年MM月dd日"];
//[format setDateFormat:@"yy-MM-dd"];
//如果是这种:那么返回的时间是:2016-08-10
NSDate *date = [NSDate dateWithTimeIntervalSince1970:time];
NSString *str = [format stringFromDate:date];
return str;
}
+ (NSString *)formatHourMinutesSecond:(NSTimeInterval)time
{
if (time < 0) return @"";
NSDateFormatter *format = [[NSDateFormatter alloc] init];
[format setDateFormat:@"HH时mm分ss秒"];
NSDate *date = [NSDate dateWithTimeIntervalSince1970:time/1000];
NSString *str = [format stringFromDate:date];
return str;
}
+ (NSString *)formatYearMonthDayHourMinutesSecond:(NSTimeInterval)time
{
if (time < 0) return @"";
NSDateFormatter *format = [[NSDateFormatter alloc] init];
[format setDateFormat:@"yyyy年MM月dd日 HH时mm分ss秒"];
NSDate *date = [NSDate dateWithTimeIntervalSinceNow:time/1000];
NSString *str = [format stringFromDate:date];
return str;
}
已经封装好了,然后只需要将这个文件拖入到你的工程,就可以使用了
实例:
NSString *string = @"1469442519000";
NSTimeInterval second = string.longLongValue/1000.0;
//获取年月日
NSString *str = [NSString formatYearMonthDay:second];
NSLog(@"%@",str);
//获取时分秒
NSString *str1 = [NSString formatHourMinutesSecond:second];
NSLog(@"%@",str1);
//获取年月日时分秒
NSString *str2 = [NSString formatYearMonthDayHourMinutesSecond:second];
NSLog(@"%@",str2);
备注:
如果有不足或者错误的地方还望各位读者批评指正,可以评论留言,笔者收到后第一时间回复。
QQ/微信:2366889552 /lan2018yingwei。
简书号:凡尘一笑:[简书]
http://www.jianshu.com/users/0158007b8d17/latest_articles
感谢各位观众老爷的阅读,如果觉得笔者写的还凑合,可以关注或收藏一下,不定期分享一些好玩的实用的demo给大家。
文/凡尘一笑(简书作者)
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
网友评论