0

このような応答配列

 NewDataSet =     {
        Table =         (
                        {
                City =             {
                    text = "\nThiruvananthapuram";
                };
                Country =             {
                    text = "\n\nIndia";
                };
                text = "\n";
            },
                    {
                City =             {
                    text = "\nVellore";
                };
                Country =             {
                    text = "\n\nIndia";
                };
                text = "\n";
            }
        );
        text = "\n";

私はこのコードを書いています..

xmlDictionary = [XMLReader dictionaryForXMLString:xmlResultString error:nil];

    NSLog(@"%@",xmlDictionary);



    NSLog(@"%@",xmlDictionary);

    NSArray * responseArr = xmlDictionary[@"NewDataSet"];

    NSLog(@"%@",responseArr);


    for(NSDictionary * dic in responseArr)
    {
        NSLog(@"%@",dic);

        //[array1 addObject:[dic valueForKey:@"City"]];

        [array1 addObject:[[dic valueForKey:@"City"] valueForKey:@"text"]];

    }

しかし、データを取得しません。配列1で。このおかげで事前に私を助けてください。

問題は、NSDictionary で値を取得できないことです。

エラーログは

このクラスは、キー City のキー値コーディングに準拠していません。

4

4 に答える 4

-1
        array1 = [[NSMutableArray alloc]init];
        for(NSDictionary * dic in responseArr)
        {

            [array1 addObject:[dic objectForKey:@"City"]];
        }

        NSLog(@"array1 >> %@",array1);

これを試して

于 2013-10-03T12:40:52.650 に答える
-1

このコードを試してください...

   for(int i =0;i<[responseArr count];i++)
   {

     NSString *str = [[responseArr objectAtIndex:i] valueForKey:@"City"];
     [array1 addObject:str];
  }

それが機能しているかどうかを教えてください!!!

ハッピーコーディング!!!

于 2013-10-03T12:51:38.547 に答える
-1

array1 をどこにも割り当てていないようです。

あなたの解決策はここにあります:

   array1 = [[NSMutableArray alloc]init];

   for(NSDictionary * dic in responseArr)
    {
        [array1 addObject:[dic valueForKey:@"City"]];
    }
    NSLog(@"array1 >> %@",array1);

すでに array1 を割り当てている場合は、 の値を記録してみてください[dic valueForKey:@"City"]

于 2013-10-03T12:38:40.700 に答える