4

私はiOSを初めて使用します。

NSData:

{
"results" : [
  {
     "formatted_address" : "Proyezd Voskresenskiye Vorota, 3, Moscow, Russia, 109012",
     "geometry" : {
        "location" : {
           "lat" : 55.75622380,
           "lng" : 37.61855850
        } 

「formatted_address」だけが必要ですが、アドレスとなるNSStringを作成するのを手伝ってもらえますか?愚かな質問でごめんなさい。

4

2 に答える 2

7

あなたNSDataはJSON応答ですNSDictionary。データの特定の部分にアクセスできるようにするには、を作成する必要があります。NSDictionaryキーを値にマップするだけです。呼び出す値を取得するには– objectForKey:。あなたの場合、キー「結果」の値として辞書があります。だからあなたの場合:

NSDictionary *results = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
NSDictionary *resultsDictionary = [[results objectForKey:@"results"] objectAtIndex:0];
NSString *formattedAddress = [resultsDictionary objectForKey:@"formatted_address"];
于 2012-08-03T15:31:38.670 に答える
1

NSJSONSerializationクラスを見てください。データを辞書に変換する方法があります。

+ (id)JSONObjectWithData:(NSData *)data options:(NSJSONReadingOptions)opt error:(NSError **)error;

これで、新しく作成したNSDictionaryに問い合わせることで、NSStringを取得できるようになります。

于 2012-08-03T15:26:07.433 に答える