0

私は SBJson を使用しており、1 つの値を持つ 1 つのキーがある場合に解決する方法を知っていますが、2 つのキーと 2 つの値がある場合はどのように機能しますか?

これはデコードする必要がある文字列です

    [{"ID":"1","Color":"Blue"},{"ID":"2","Color":"Red"},{"ID":"3","Color":"Green"}]

これは私が試したものです

    SBJsonParser *parser = [[SBJsonParser alloc] init];
    NSDictionary *responseDict = [parser objectWithString:responseString];
    NSString *decodedJSON = [responseDict objectForKey:@"{\"ID\":\"Color\"}"];

最後の行でクラッシュします。

4

1 に答える 1

1

JSON オブジェクトは のNSArrayですNSDictionary。配列を反復処理するか、インデックスを使用する必要があります。たとえば、最初の要素 ( {"ID":"1","Color":"Blue"})を取得するには、次のようにします。

[responseDict objectAtIndex:0];

それらすべてを反復処理する場合は、次のようなものを使用します (たとえば、順番に出力するには)。

for(NSDictionary* e in responseDict) {
  NSLog(@"%@", e);
}
于 2013-08-02T13:29:24.133 に答える