将stringMM / DD / YYYY转换为NSDate

在我的应用程序中,我正在使用Facebook Graph API,当我提取用户的详细信息时,我将用户的生日作为格式为MM / DD / YYYY的string。

我的问题是,如何将string“MM / DD / YYYY”转换为NSDate

我试着做

  NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"MM/DD/YYYY"]; NSDate *date = [dateFormatter dateFromString:@"08/08/2012"]; [dateFormatter release]; 

但是我收到了错误的date

使用NSDateFormatter你可以直接从NSString转换为NSDate 。 这是一个例子:

 NSDateFormatter* myFormatter = [[NSDateFormatter alloc] init]; [myFormatter setDateFormat:@"MM/dd/yyyy"]; NSDate* myDate = [myFormatter dateFromString:@"8/26/2012"]; NSLog(@"%@", myDate); 

有关date格式化模式的详细信息,请参阅Unicode.org 。

添加[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]]

你做得很好。 你的问题只是格式string。

  • 资本M是月份。
  • d是一天。
  • y是一年。

只要一贯使用这些符号,你应该没问题。

正是这种情况NSDateFormatter 存在 。