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

iOS中日期和字符串的相互转化

2016-07-07 09:23 387 查看
例1、 从服务器段获取到的字符串转化为时间如:

//网络请求获取的数据

NSString *time = @"495946429";

NSInteger num = [time integerValue];

NSDateFormatter *formatter = [[NSDateFormatter alloc]init];

[formatter setDateStyle:NSDateFormatterMediumStyle];

[formatter setTimeStyle:NSDateFormatterShortStyle];

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

NSDate *confromTimesp = [NSDate dateWithTimeIntervalSince1970:num];

NSString *confromTimespStr = [formatter stringFromDate:confromTimesp];

NSLog(@"%@",confromTimespStr);

转化之后结果为:1985-09-19

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

NSString *string = @"20110826134106";

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

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

[inputFormatter setDateFormat:@"yyyyMMddHHmmss"];

NSDate *inputDate = [inputFormatter dateFromString:string];

NSLog(@"date= %@", inputDate);

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

[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:20110826 134106
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息