NSDate 1 год назад - PullRequest
       3

NSDate 1 год назад

0 голосов
/ 16 января 2011

Рассмотрим дату начала и дату окончания:

NSDate *startDate, *endDate;

Например, startDate может быть 10 декабря 2010 года, а endDate может быть 4 января 2011 года.

Рассмотрим диапазондней с 10 декабря 2010 года по 4 января 2011 года.

Как я могу определить диапазон дат за тот же промежуток дней, но ровно 1 год назад.И я хотел бы, чтобы это учитывало високосные годы.Поэтому я не могу просто вычесть 365 дней из каждой даты.

Я бы хотел получить:

NSDate *oneYearAgoStartDate, *oneYearAgoEndDate.

Так что, возможно, в этом случае oneYearAgoStartDate будет 10 декабря,2009 и oneYearAgoEndDate будут 4 января 2010 года (обратите внимание, что я не подтвердил это).

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

1 Ответ

6 голосов
/ 16 января 2011

Я бы сказал, что вы хотите взглянуть на NSCalendar, в частности, метод -dateByAddingComponents:toDate:options:.В вашем случае экземпляр NSDataComponents будет иметь year, равный -1.

...