Преобразование NSString даты в NSDate

Это может быть глупый вопрос, но я не могу найти ответ здесь или в документации.

Я хочу преобразовать NSString, например @ “9/22/2010 3:45 PM” в NSDate.

Я знаю, использовать NSDateFormatter, но проблемы

  1. Месяц может составлять одну или две цифры
  2. Аналогично, дата может быть одной или двумя цифрами
  3. Часами может быть одна или две цифры
  4. Что мне делать с AM / PM?

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; [dateFormat setDateFormat:@"MM/dd/yyyy h:mm a"]; NSDate *date = [dateFormat dateFromString:dateStr]; [dateFormat release]; 

нет проблем в двухзначном или двухзначном месяце.

Это должно помочь вам.

Вы можете разобрать NSString в NSDate используя class NSDateFormatter . Дополнительную информацию см. В документации :

Экземпляры NSDateFormatter создают строковые представления объектов NSDate (и NSCalendarDate) и преобразуют текстовые представления дат и времени в объекты NSDate.

У меня была такая же проблема, не знаю, почему NSDateFormatter не работает для меня (iOS5 – Xcode 4.3.2), но это сработало для меня:

 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init]; [dateFormatter setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"]]; [dateFormatter setDateFormat:@"dd-MM-yyyy"]; NSString *dateString = @"05-06-2012"; NSDate *date; NSError *error = nil; if (![dateFormatter getObjectValue:&date forString:dateString range:nil error:&error]) { NSLog(@"Date '%@' could not be parsed: %@", dateString, error); } [dateFormatter release]; 
  • Класс Foo реализован как в MyApp, так и в MyAppTestCase. Один из двух будет использован. Какой из них не определен
  • всплывающее меню iPhone, как iPad popover?
  • Добавление изображений в кнопки UIActionSheet, как в UIDocumentInteractionController
  • Какова стоимость использования автореферата в cocoa?
  • Подчеркивать префикс имени свойства?
  • Приложение iOS: как очистить уведомления?
  • Как обрабатывать дублируемую символьную ошибку от сторонних библиотек?
  • Core-Data iPhone: не удалось найти NSManagedObjectModel
  • Как использовать VideoToolbox для распаковки видеоstreamа H.264
  • Как проверить локальный Wi-Fi (не только сотовую связь) с помощью iPhone SDK?
  • Изменение позиции UIBarButtonItem в UINavigationBar
  • Interesting Posts

    В diskpart, когда я набираю «select disk 1», затем выберите раздел 1, я получаю «No partition selected»

    Вывод аргумента шаблона из подписи вызова std :: function

    Необходимо удалить все файлы с одним расширением на диске в Windows 7

    Нельзя ли динамически использовать Generics?

    Внешний жесткий диск не отображается в / dev на малине pi

    Как проверить выравнивание разделов на накопителе SSD?

    Java – как получить координаты точки после отпускания кнопки мыши (JFreeChart)

    Qt: не удается найти ошибку -lGL

    Как применить правило пользовательской сортировки к WPF DataGrid?

    Значение параметра функции назначения объекта dest6 для ES6 по умолчанию

    Как я могу извлечь аудио из видео YouTube?

    Как изменить шрифт консоли Windows XP?

    Слишком много файлов журнала, созданных в папке Temp

    В чем разница между «отображаемым именем пакета» и «именем пакета» в информационном plist приложения cocoa

    Как открыть локальный файл PDF в WebView на Android?

    Давайте будем гением компьютера.