У своєму додатку я бачу справді дивну конвертацію дат. Це код:
theDateString = [theDateFormatter stringFromDate:date];
Якщо date
є 2007-12-31 00:00:00 +0100
theDateString
є 2008
але якщо дата є 2004-12-31 00:00:00 +0100
theDateString
є 2004.
Метод є - (NSString *)stringFromDate:(NSDate *)date
в NSDateFormatter
і це додаток mac.
Формат NSDateFormatter: [theDateFormatter setDateFormat:@"Y"];
Чому? Дякую
Відповіді:
2 для відповіді № 1Ви повинні використовувати @"y"
замість @"Y"
, оскільки велика «Y» вказує рік відповідно до «тижня року». 52-й тиждень 2007 року закінчується у 2008 році, тому він повертає 2008 рік замість 2007 року.
Оновлення:
Побачити: http://waracle.net/mobile/iphone-nsdateformatter-date-formatting-table/