Форматировщик NSDate. Проблема его обнуления при преобразовании NSString в NSDate. - PullRequest
3 голосов
/ 26 октября 2010

Привет всем Я изо всех сил пытаюсь преобразовать NSString в NSDate с помощью форматера, но он будет нулевым. Может ли кто-нибудь помочь, пожалуйста, вот мой код ...

 NSString *dateString=[NSString stringWithFormat:@"10/26/2010/09:56:56 PM"];
 NSDateFormatter *dateFormat = [[[NSDateFormatter alloc] init] autorelease];
 [dateFormat setDateFormat:@"mm/dd/yyyy HH:mm:ss a"];
 NSDate *localDateTime =[dateFormat dateFromString:dateString];
 NSLog(@"client date is %@",localDateTime);

Спасибо заранее

Ответы [ 2 ]

3 голосов
/ 26 октября 2010

Может быть потому, что ваш dateString и формат не совпадают.

10/26/2010/09:56:56 PM

mm/dd/yyyy HH:mm:ss a

Вы видите разницу? :) Они на самом деле должны соответствовать. В формате у вас есть пробел между годом и часами, а в фактической дате есть косая черта. Месяц, который вы соответствуете на «мм», который на самом деле минут и должен быть «ММ». Изменить на:

10/26/2010 09:56:56 PM

MM/dd/yyyy HH:mm:ss a

Могут быть и другие проблемы, поэтому я предлагаю вам взглянуть на руководство , чтобы понять его правильно.

0 голосов
/ 26 октября 2010
 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd 'at' HH:mm"];

NSDate *formatterDate = [dateFormatter dateFromString:@"1999-07-11 at 10:30"];
[dateFormatter release];

Попробуйте это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...