我有一个数组,它有数千条记录

时间:2015-05-17 11:55:17

标签: ios objective-c arrays

我想使用Year来排序数组并创建年度数组并创建整个主数组任何人都可以帮助我吗?

NSArray *anArray = @ @{@"newsID" : @"1",@"userID" : @"3",@"catID" : @"2",@"news" : @"may i know",@"date" : @"Tue, 22 May 2013 00:00:00 GMT+05:30"},];

1 个答案:

答案 0 :(得分:3)

您可以使用排序描述符进行排序

NSArray *sortedArrayWithDate = [anArray sortedArrayUsingComparator:
                                        ^(id obj1, id obj2) {
                                            NSString  *dt1string = [obj1 objectForKey:@"date"];
                                            NSString *dt2string = [obj2 objectForKey:@"date"];
                                            NSDate *dt1 =[self converttoDate : dt1string];
                                            NSDate *dt2 =[self converttoDate : dt2string];
                                            return [dt1 compare:dt2];

                                        }];

你必须为converttoDate创建一个函数,它将string作为参数返回日期 您可以根据日期格式轻松找到将日期转换为字符串的功能

stringtodate

的参考资料
[http://stackoverflow.com/questions/4380381/convert-string-to-date-in-my-iphone-app][1]
[http://stackoverflow.com/questions/936969/nsdate-and-nsdateformatter-short-format-date-and-time-in-iphone-sdk][2]