0

TouchJSONが返すディクショナリからオブジェクトを表すディクショナリを取得する方法がわからないようです。

例えば:

ここの形式でJSONを使用する場合:

http://search.twitter.com/search.json?q=hello

「for」ステートメントを使用してすべてのツイートを配列にプルすることなく、「id」= xのツイートを取得するにはどうすればよいですか?

たとえば、これを行う必要はありません...アクセスしたいオブジェクトの「id」(インデックスではなくJSONキー)を知っているので

NSArray *tweetsArray = [resultsDictionary objectForKey:@"results"];
 for (NSDictionary *tweetDictionary in tweetsArray) {
     NSString *tweetText = [tweetDictionary objectForKey:@"text"];
     [tweets addObject:tweetText];

 }
4

2 に答える 2

1

NSPredicateを使用して、次のようにtweetsArrayをフィルタリングできます。

NSArray *tweetsArray = [resultsDictionary objectForKey:@"results"];
NSArray* filtered = [test filteredArrayUsingPredicate:
                          [NSPredicate predicateWithFormat:@"id = %@",@"456"]];

NSDictionary* tweet = [filtered lastObject];
于 2010-07-12T08:16:48.137 に答える
0

JSON を解析するときに id=x 条件をフィルタリングしないのはなぜですか。これにより、JSON データを 1 回だけトラバースするようになります。

これは、id=x 条件のためだけに JSON にアクセスする必要がある場合にのみ、より良い解決策になります。

于 2010-07-17T18:49:33.650 に答える