格式化日期问题

时间:2016-04-05 13:03:28

标签: ios objective-c nsdate nsdateformatter

我知道这个问题已被问了很多次,并且可能是一些问题的重复,实际上我正在尝试通过在String中转换它们来将Date存储到数组中。我需要NSDate格式的值,所以我再次将存储的字符串转换为Date。

NSDateFormatter *dateformat =  [[NSDateFormatter alloc] init];
[dateformat setDateFormat:@"MM-dd-yy-hh-mm-ss"];

NSString *date  = [dateformat stringFromDate:datePicker.date];
[kAppDelegate.glbArrName   addObject:date];

但我得到了这个输出:

NSString *date = [kAppDelegate.glbArrDate objectAtIndex:indexPath.row];

NSLog(@"Date of birth %@",date);

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

[dateFormatter setDateFormat:@"MM-dd-yy-hh-mm-ss"];
NSDate *birthDate = [[NSDate alloc] init];

birthDate = [dateFormatter dateFromString:date];

NSLog(@"Date of birth after formatting %@",birthDate);

输出是:

Date of birth 04-05-16-06-38-14
Date of birth after formatting 2016-04-05 01:08:14 +0000

为什么它会改变格式,因为我和以前一样。请帮我看看......

1 个答案:

答案 0 :(得分:0)

您将日期字符串重写回NSDate,然后打印出NSDate,默认为后一种2016-04-05 01:08:14 +0000格式,作为NSDate -description的一部分。