2012-05-04 29 views
5

Tôi cố gắng hiển thị ngày có định dạng ngày nhưng điều này thay đổi năm của ngày.Dateformatter thay đổi năm của ngày của tôi

Đây là phương pháp:

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]; 
} 

Và đây là những gì được hiển thị trong giao diện điều khiển:

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 

Ở đây tôi m. DateFormatter thêm myDate một năm và tôi thực sự không biết tại sao. Trường hợp này chỉ xảy ra cho 2 ngày cuối cùng của năm (30 và 31 tháng 12).

Cảm ơn sự giúp đỡ của bạn.

Alexandre

Trả lời

8

Sử dụng

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

và có lẽ bạn nên kiểm tra thisthis.

Các vấn đề liên quan