如何排序这个json。下面的 json 在浏览器中输出。
{
event: {
July: [
{
createdSeatMap: "yes",
status: "1",
completed: "1",
eventPayment: "0",
}
],
Aug: [
{
createdSeatMap: "yes",
status: "1",
completed: "1",
eventPayment: "0",
}
],
Sept: [ ],
Oct: [ ],
Nov: [ ],
Dec: [
{
createdSeatMap: "yes",
status: "1",
completed: "1",
eventPayment: "0",
stamp: "1386019800"
},
{
createdSeatMap: "yes",
status: "1",
completed: "1",
eventPayment: "0",
stamp: "1387921620"
}
],
Jan: [ ],
Feb: [ ],
Mar: [ ],
Apr: [ ],
May: [ ],
June: [ ]
}
}
获取时在控制台中。
Apr = (
);
Aug = (
{
createdSeatMap: "yes",
status: "1",
completed: "1",
eventPayment: "0",
}
);
Dec = (
{
createdSeatMap: "yes",
status: "1",
completed: "1",
eventPayment: "0",
stamp: "1386019800"
},
{
createdSeatMap: "yes",
status: "1",
completed: "1",
eventPayment: "0",
stamp: "1387921620"
}
);
Feb = (
);
Jan = (
);
July = (
{
createdSeatMap: "yes",
status: "1",
completed: "1",
eventPayment: "0",
}
);
June = (
);
Mar = (
);
May = (
);
Nov = (
);
Oct = (
);
Sept = (
);
下面是我正在使用的代码
NSMutableArray *dictAllValues = [[NSMutableArray alloc]init];
NSMutableDictionary *getDataDict = [[NSMutableDictionary alloc]init];
getDataDict = [self.mGetDataDict valueForKey:@"event"];
NSArray *dictAllKeys = [[NSArray alloc] init];
dictAllKeys = [getDataDict allKeys];
NSLog(@"dict :%d", [dictAllKeys count]);
for(int i=0; i<[getDataDict count]; i++)
{
NSString *strKey = [dictAllKeys objectAtIndex:i];
[dictAllValues addObjectsFromArray:[getDataDict valueForKey:strKey]];
if(i==0)
{
NSArray *cVals = [dictAllValues valueForKey:strKey];
int c = [cVals count];
NSLog(@"values:%@", cVals);
NSLog(@"values:%@", dictAllValues);
[self.mArrMOneEvents addObject:[NSString stringWithFormat:@"%d", c]];
self.mArrMOneEtType = [dictAllValues valueForKey:@"type"];
self.mArrMOneEtTime = [dictAllValues valueForKey:@"time"];
self.mArrMOneEtSeatMap = [dictAllValues valueForKey:@"createdSeatMap"];
self.mArrMOneEtSeatId = [dictAllValues valueForKey:@"seatMapId"];
self.mArrMOneEtQuant = [dictAllValues valueForKey:@"quantity"];
self.mArrMOneEvents = [dictAllValues valueForKey:@"eventName"];
self.mArrMOneETLoc = [dictAllValues valueForKey:@"location"];
self.mArrMOneEtEId = [dictAllValues valueForKey:@"id"];
self.mArrMOneEtDesc = [dictAllValues valueForKey:@"description"];
self.mArrMOneEtDate = [dictAllValues valueForKey:@"date"];
self.mArrMOneEtCurr = [dictAllValues valueForKey:@"currency"];
self.mArrMOneEtCost = [dictAllValues valueForKey:@"cost"];
self.mArrMOneEtCateg = [dictAllValues valueForKey:@"category"];
self.mArrmOneEtImg = [dictAllValues valueForKey:@"banner"];
NSLog(@"array one:%d", [self.mArrMOneEvents count]);
}
}
这是我试过的
NSArray *keys = [[getDataDict allKeys] sortedArrayUsingSelector: @selector(compare:)];
NSMutableArray *array = [NSMutableArray arrayWithCapacity: [keys count]];
for (NSString *key in keys) {
[array addObject: [getDataDict objectForKey: key]];
}
NSLog(@"array:%@", array);
下面是描述此要求的图像。
需要与来自服务器的方式相同的响应,请指导以上。提前致谢。