如何按日期格式@"2013年8月"按升序排序NSArray字符串..?

Ank*_*ava 4 sorting iphone objective-c ios

我有一个NSString格式的对象数组...@"Aug 2013" @"July 2013" and so on...

我想对这个数组进行排序ascending order..首先获取个别值的日期是一个好主意..?

tde*_*ine 5

一个块中的另一个解决方案

NSArray* array = [NSArray arrayWithObjects:@"Janvier 2012",@"Mars 2013", @"Juin 2013", @"Octobre 2012", nil];

NSArray* result = [array sortedArrayUsingComparator:^(id a, id b) {
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
    [dateFormat setDateFormat:@"MMMM YYYY"];

    NSDate* datea = [dateFormat dateFromString:a];
    NSDate* dateb = [dateFormat dateFromString:b];

    return [datea compare:dateb];
}];
Run Code Online (Sandbox Code Playgroud)