0

NSArray に格納されている json 応答からテーブルビューにデータを読み込もうとしています。

json:

"fulltime": [
        2,
        2
    ],

上記はjsonですが、画面に表示すると以下のコードのようになります。

 ( 2, 2)

この場合、次を使用して角かっこ () の不要な文字を削除しようとしましたが、コードの下に警告が表示されます。

  NSArray *place= [jsonResults objectAtIndex:indexPath.row];

  NSString *score= [place valueForKey:@"fulltime"];

最初にこれを試しました:

  NSString *score = [[[place valueForKey:@"fulltime"]objectAtIndex:indexPath.row]    stringByReplacingOccurrencesOfString:@"(" withString:@""];

そして、これ:

  NSString *jsonstring = [score stringByReplacingOccurrencesOfString:@"\)\n" withString:@""];
  jsonstring = [jsonstring stringByReplacingOccurrencesOfString:@"\t" withString:@""];

これは私が毎回得るエラーです:

    *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason:   '-[__NSCFNumber stringByReplacingOccurrencesOfString:withString:]: unrecognized selector  sent to instance 0x1f55f270'

文字を削除しようとしている方法やデータを解析している方法に問題があるかどうかはわかりません。以下はjsonのより良いビューです。「フルタイム」にアクセスするまで、他のすべてはうまく解析されます

    "date": "2013-03-17 16:00:00",
    "home_id": 8455,
    "home": "Chelsea",
    "homeshort": "Chelsea",
    "away_id": 8654,
    "away": "West Ham United",
    "awayshort": "West Ham",
    "status": "Finished",
    "halftime": [1, 0],
    "fulltime": [2, 0],
    "extratime": [0, 0],
    "penalties": [0, 0],
4

2 に答える 2

1

あなたが何を望んでいるのか理解できたかどうかはわかりませんが、これらの数値を解析するには、次のようにします。

NSDictionary * place= [jsonResults objectAtIndex:indexPath.row];
NSArray * fulltime = [place valueForKey:@"fulltime"];
NSNumber * num1 = [fulltime objectAtIndex:0];
NSNumber * num2 = [fulltime objectAtIndex:1];

NSLog(@"Fulltime is %d, %d", [num1 intValue], [num2 intValue]);
于 2013-04-24T10:38:20.397 に答える
1

このようにしてみてください。

  [[[jsonarray objectAtIndex:0] valueForKey:@"fulltime"] objectAtIndex:0]
于 2013-04-24T10:30:30.560 に答える