在iphone格式化时日期出错?

时间:2012-05-30 07:15:38

标签: iphone objective-c xcode nsdate nsdateformatter

您好我正在尝试格式化我从服务器获取的日期。我试过这样的

NSString *dateStr =@"2012-5-21";
    // Convert string to date object
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"yyyy-mm-dd"];
    NSDate *date = [dateFormat dateFromString:dateStr];


    // Convert date object to desired output format
    [dateFormat setDateFormat:@"dd MMM yyyy"];
                                dateStr = [dateFormat stringFromDate:date];  
    finalDate.text=dateStr;


    [dateFormat release];

但代替21 May 2012。我得到了21 Jan 2012

2 个答案:

答案 0 :(得分:5)

您第一次使用错误的格式。 mm表示分钟,用大写MM代替 -

[dateFormat setDateFormat:@"yyyy-MM-dd"];

答案 1 :(得分:4)

USe Capital MM用于月份格式表示

 [dateFormat setDateFormat:@"yyyy-MM-dd"];