如何使用格式化程序将字符串日期转换为nsdate?
我按照*的答案和写一个代码,但我不知道发生了什么,它不会工作。任何人都可以为我解决它。我使用愚蠢的代码....如何使用格式化程序将字符串日期转换为nsdate?
NSMutableArray *movieDate;
NSArray *temp1 = [_dicUpcomingMovie objectForKey:@"results"];
for (NSDictionary *temp2 in temp1)
{
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
NSString *datestring = [temp2 valueForKey:@"release_date"];
//NSDate *myDate = [[NSDate alloc]init];
[formatter setDateFormat:@"dd MMM,YYYY"];
NSDate *date = [formatter dateFromString:datestring];
NSLog(@"%@",date);
[movieDate addObject:date];
NSLog(@"%@",movieDate);
}
所以这就是它。上面的代码是不工作的myDate对象仍然没有
试试这个,
NSMutableArray *movieDate;
NSArray *temp1 = [_dicUpcomingMovie objectForKey:@"results"];
for (NSDictionary *temp2 in temp1)
{
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
NSString *datestring = [temp2 valueForKey:@"release_date"];
//NSDate *myDate = [[NSDate alloc]init];
[formatter setDateFormat:@"dd MM,YYYY"];
NSDate *date = [formatter dateFromString:datestring];
NSLog(@"%@",date);
[movieDate addObject:date];
NSLog(@"%@",movieDate);
}
告诉我密钥发布日期的格式date_date – Sunny
NSMutableArray *movieDate=[[NSMutableArray alloc]init];;
NSArray *temp1 = [_dicUpcomingMovie objectForKey:@"results"];
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
for (int i=0 ;i<temp1.count;i++)
{
NSString *datestring = [[temp1 objectatindex:i]valueForKey:@"release_date"];
[serverFormatter setTimeZone:[NSTimeZone localTimeZone]];
[serverFormatter setDateFormat:@"dd,MMM,YYYY"];
NSDate *date = [serverFormatter dateFromString:dateString1];
[movieDate addObject:date];
}
NSLog(@"%@",movieDate);
使用它它会工作 –
它不会工作,因为你不知道字符串日期格式! – tbilopavlovic
他可以知道格式,并且在他的问题中发布了相同的格式,如果它不起作用,他必须根据他的要求更改日期格式。这就是他 –
你是什么日期格式,请打印数组或字典的数据? –
我猜'datetring'和dateFormat('dd MMM,YYY')不匹配(这是最好的猜测,但你没有给出样本)。另外,避免每次在循环中执行'NSDateFormatter'对象的alloc/init。首先它非常耗费,并且每次都使用相同的功能。 – Larme
打印日期fromat –