更改日期格式

时间:2012-11-07 15:50:42

标签: objective-c ios date-format

我得到了NSString *string = @"2012-10-24 23:00:00 +0000";

我想将其转换为普通格式24 october 2012

我使用以下代码。但它一直在崩溃。任何人都可以帮助我吗?

NSDateFormatter *dateformat = [[NSDateFormatter alloc] init];
[dateformat setDateFormat:@"yyyy MM dd HH:mm:SS zzz"];
NSDate *dateNS = [dateformat dateFromString:date];
[dateformat setDateFormat:@"dd MM yyyy"];
date = [dateformat stringFromDate:dateNS];
[dateformat release]

1 个答案:

答案 0 :(得分:1)

它一直崩溃,因为它无法从输入日期创建NSDate,因为dateformat不正确。它错过了日期和秒之间的- ss而不是SS

此外,您需要使用MMMM格式化日期来获取月份全名:

NSString *string = @"2012-10-24 23:00:00 +0000";
NSDateFormatter *dateformat = [[NSDateFormatter alloc] init];
[dateformat setDateFormat:@"yyyy-MM-dd HH:mm:ss zzz"];
NSDate *dateNS = [dateformat dateFromString:string];
[dateformat setDateFormat:@"dd MMMM yyyy"];
NSString *date = [dateformat stringFromDate:dateNS];
[dateformat release];