Как добавить длительность в datetime. Например, 30 минут.Добавить продолжительность в NSDate
NSString *str = @"31-06-2013 11:45 pm";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd-MM-yyyy hh:mm a"];
NSDate *startTime = [dateFormatter dateFromString: str];
NSDate *endTime = [startTime dateByAddingTimeInterval:60 * 30];
Дисплей Выходной 31-06-2013 11:45 вечера но правильно должно быть 01-06-2013 12:15 утра
Это дубликат многих, многих вопросов, поэтому я не могу найти представителя. Нижняя строка - вы создаете дату из строки на время, но не предоставляете для нее часовой пояс - обычно она будет по умолчанию для UTC. Затем вы, вероятно, печатаете 'endTime' с' NSLog' или через 'po' в отладчике - это напечатает время в UTC. Таким образом, вам необходимо: 1) предоставить часовой пояс для форматирования даты перед вызовом 'dateFromString:' и 2) создать другой формат даты, а также ваш часовой пояс, чтобы получить нужный вам результат. –