Установка NSDate из NSString - PullRequest
       3

Установка NSDate из NSString

3 голосов
/ 02 декабря 2011

Я использую XCode 4.2 для разработки приложения для iPhone, я новичок в разработке приложений

У меня есть следующие строки NSStrings

NSString *year;
NSString *month;
NSString *day;
NSString *hour;
NSString *minute;

как я могу установить переменную NSDate *date, используя эти

Спасибо

Ответы [ 2 ]

5 голосов
/ 02 декабря 2011

Пример:

NSString *year   = @"2011";
NSString *month  = @"1";
NSString *day    = @"2";
NSString *hour   = @"3";
NSString *minute = @"3";

NSDateComponents *dateComponents = [[NSDateComponents alloc] init];
dateComponents.year   = [year intValue];
dateComponents.month  = [month intValue];
dateComponents.day    = [day intValue];
dateComponents.hour   = [hour intValue];
dateComponents.minute = [minute intValue];

NSDate *date = [[NSCalendar currentCalendar] dateFromComponents:dateComponents];
NSLog(@"date: %@", date);

Вывод NSLog:

date: 2011-01-02 08:03:00 +0000
0 голосов
/ 02 декабря 2011

В основном вам нужно создать одну строку, имеющую все поля, необходимые для создания даты.

То есть что-то вроде:

NSString * dateString = [NSString dateWithFormat: @"%@-%@-%@ %@:%@", year, month, day, hour, minute];

Затем вы можете следовать решения, предоставленные в этом связанном вопросе или в этом другом связанном вопросе , чтобы придумать вашу NSDate (и если эти решения не объясняют достаточно вещей, вы можете легко выполнить поиск - вопрос "как конвертировать NSStrings в NSDates "встречается здесь довольно часто).

...