您的位置:首页 > 移动开发 > IOS开发

iOS中日期和字符串的相互转化(时间戳)

2016-05-30 14:28 381 查看
例1、 从服务器段获取到的字符串转化为时间如:转化1416882712000

//网络请求获取的数据

NSString *time = [NSStringstringWithFormat:@%@,[[dateListobjectAtIndex:indexPath.row]gradeDate]];

NSInteger num = [time integerValue]/1000;(重点)

NSDateFormatter *formatter = [[[NSDateFormatteralloc]init]autorelease];

[formatter setDateStyle:NSDateFormatterMediumStyle];

[formatter setTimeStyle:NSDateFormatterShortStyle];

[formatter setDateFormat:@YYYY-MM-dd];

NSDate*confromTimesp = [NSDatedateWithTimeIntervalSince1970:num];NSString*confromTimespStr = [formatterstringFromDate:confromTimesp];

cell.DateContent.text = confromTimespStr;

转化之后结果为:2014-11-25

 

例2、如何如何将一个字符串如“ 20110826134106”装化为任意的日期时间格式,下面列举两种类型

NSString*string = @20110826134106;

NSDateFormatter *inputFormatter= [[[NSDateFormatter alloc] init] autorelease];

[inputFormatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@en_US] autorelease]];

[inputFormatter setDateFormat:@yyyyMMddHHmmss];

NSDate*inputDate = [inputFormatter dateFromString:string];

NSLog(@date= %@, inputDate);

 

NSDateFormatter *outputFormatter= [[[NSDateFormatter alloc] init] autorelease];

[outputFormatter setLocale:[NSLocale currentLocale]];

[outputFormatter setDateFormat:@yyyy年MM月dd日 HH时mm分ss秒];

NSString *str= [outputFormatter stringFromDate:inputDate];

NSLog(@testDate:%@,str);

两次打印的结果为:

date= 2011-08-26 05:41:06 +0000

testDate:2011年08月26日 13时41分06秒
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  NSDate 时间戳