チュートリアルを通じて、obj-C で http リクエストを作成し、json オブジェクトを解析することができました。取得したデータからいいえ、最初の 17 個を配列に保存し、20 ~ 33 個の項目を別の項目に保存したいと考えています。問題は、データが http リクエストで行った場合と同じ順序で表示されていないことです。
これが私のコードです:
- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
NSLog(@"connectionDidFinishLoading");
NSLog(@"Succeeded! Received %d bytes of data",[self.responseData length]);
// convert to JSON
NSError *myError = nil;
NSDictionary *res = [NSJSONSerialization JSONObjectWithData:self.responseData options:NSJSONReadingMutableLeaves error:&myError];
NSMutableArray *array_1 = [NSMutableArray array];
NSMutableArray *array_2 = [NSMutableArray array];
int index=0;
// show all values
for(id key in res) {
index=index+1;
id value = [res objectForKey:key];
NSString *keyAsString = (NSString *)key;
NSString *valueAsString = (NSString *)value;
if (index<=17){
[array_1 addObject:valueAsString];
NSLog(@"%i: array 1 filling up: %@",index, keyAsString);
NSLog(@"%@",array_1);
} else if ((index>20)&&(index<=33)){
[array_2 addObject:valueAsString];
}
}
}
そのため、ブラウザでスクリプトを実行したときと同じ順序でデータを配置したいと考えています。NSDictionary と関係があると思いますが、他に何を使用すればよいかわかりません。