2012-05-04 2 views
5

dateformatter를 사용하여 날짜를 표시하려고 시도하지만이 날짜는 해당 연도를 변경합니다. Dateformatter가 내 날짜의 연도를 변경합니다.

은 방법 :

setLabelWithDate:(NSdate *)date{ 
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
    NSTimeZone *gmt = [NSTimeZone timeZoneWithAbbreviation:@"GMT"]; 
    [dateFormatter setTimeZone:gmt];  
    [dateFormatter setDateFormat:@"dd MMMM YYYY"]; 

    NSLog(@"Date : %@",date); 
    NSLog(@"stringFromDate %@",[dateFormatter stringFromDate:date]); 

    self.selectedDateLabel.text = [dateFormatter stringFromDate:date]; 
    [dateFormatter release]; 
} 

그리고 이것은 콘솔에 표시되는 내용입니다 : 여기

2012-05-04 13:08:50.442 MyAppli[3339:fb03] Date : 2012-12-30 00:00:00 +0000 
2012-05-04 13:08:50.443 MyAppli[3339:fb03] stringFromDate 30 December 2013 

내가 해요. dateFormatter는 myDate를 1 년 더하고 정말로 이유를 모르겠습니다. 이 경우는 마지막 2 년 (12 월 30 일과 31 일)에만 발생합니다.

도움 주셔서 감사합니다.

알렉상드르

답변

8

사용

[dateFormatter setDateFormat:@"dd MMMM yyyy"]; // lowercase y 

당신은 아마 thisthis을 확인해야합니다.

관련 문제