2012-05-04 74 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一年,我真的不知道爲什麼。這種情況只發生在今年的最後兩天(12月30日和31日)。

感謝您的幫助。

亞歷山大

回答

8

使用

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

,你或許應該檢查thisthis