NSDateFormatter以“MMM dd yyyy”格式格式化服务器响应

我试图编写一个方法来转换从2016-08-04T00:00:01.000Z格式的服务器返回的date。 我的方法定义如下:

 - (NSString *)convertDate:(NSString *)dateString { NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init]; dateFormatter.dateFormat = @"yyyy-MM-dd'T'HH:mm:ssZZZZ"; NSDate *yourDate = [dateFormatter dateFromString:dateString]; dateFormatter.dateFormat = @"MMM dd yyyy"; NSLog(@"%@",[dateFormatter stringFromDate:yourDate]); NSString *str = [dateFormatter stringFromDate:yourDate]; return str; } 

我一直有NSDateFormatter问题,有人可以帮我这个。 我希望方法返回string,如Aug 04, 2016 。 提前致谢。

请使用下面的代码,使用“yyyy-MM-dd'T'HH:mm:ss.SSSZ”而不是@“yyyy-MM-dd'T'HH:mm:ssZZZZ”

 - (NSString *)convertDate:(NSString *)dateString { NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZ"]; NSDate *date = [dateFormatter dateFromString:dateString]; dateFormatter.dateFormat = @"MMM dd ,yyyy"; NSLog(@"%@",[dateFormatter stringFromDate:date]); NSString *str = [dateFormatter stringFromDate:date]; return str; } 

尝试这个

 - (NSString *)convertDate:(NSString *)dateString { NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init]; dateFormatter.dateFormat = @"yyyy-MM-dd'T'HH:mm:ssZZZZ"; NSDate *yourDate = [dateFormatter dateFromString:dateString]; dateFormatter.dateFormat = @"MMM dd, yyyy"; NSLog(@"%@",[dateFormatter stringFromDate:yourDate]); NSString *str = [dateFormatter stringFromDate:yourDate]; return str; } 

使用这个格式化程序@"yyyy-MM-dd'T'HH:mm:ss.sssZ"