Converting string MM/DD/YYYY to NSDate

ⅰ亾dé卋堺 提交于 2019-11-27 06:01:11

问题


In my app i'm using Facebook Graph API and when I'm fetching user details i get the user's birthday as a string with format MM/DD/YYYY.

My question is, how can I convert string "MM/DD/YYYY" to NSDate?

I try doing

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

But I got the wrong date


回答1:


Using NSDateFormatter you can convert directly from a NSString to a NSDate. Here's an example:

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

See Unicode.org for details on date formatting patterns.




回答2:


Add [dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]]




回答3:


You are doing everything fine. Your problem is only the format string.

  • Capital M is month.
  • Small d is day.
  • Small y is year.

Just use these symbols consistently and you should be fine.




回答4:


For exactly such cases NSDateFormatter exist.



来源:https://stackoverflow.com/questions/12129958/converting-string-mm-dd-yyyy-to-nsdate

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!