JSONデータの下から詳細データを取得するには? Objective-Cを使用しました。ObjectiveCのJSON解析
{
"success" : "Y"
"data": [
{
"insertId": "1",
}
]
"err" : ""
}
JSONデータの下から詳細データを取得するには? Objective-Cを使用しました。ObjectiveCのJSON解析
{
"success" : "Y"
"data": [
{
"insertId": "1",
}
]
"err" : ""
}
必要な正確なデータ
NSArray *array=[dictionary objectforKey:@"data"];
あなたは配列[{ "insertId": "1" を、}]を取得:あなたが応答を取得する場合、データのために
NSDictionary *data = [NSJSONSerialization JSONObjectWithData: [responseString dataUsingEncoding:NSUTF8StringEncoding] options:0 error:&error];
にその応答を取得
NSdictionary *dict=[array objectAtIndex:0];
辞書を配列{insertId ":" 1 "、}
私はあなたに詳細な解決策を教えます。
まず、レスポンスチェックを受けると、arrayまたはdictionaryで始まるかどうかがチェックされます。
id jsonRes = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil];
私はあなたのresponse.Itを確認あなたはまた、いくつかの疑問を持っているdictionary.Ifで始まる、キーを使用して応答から結果を得ることcondition.Afterの下に確認してください。
if([jsonRes isKindOfClass:[NSDictionary class]]){
NSDictionary *dictRes = [jsonRes copy];
NSString *strSuccess = [dictRes objectForKey:@"success"];
NSString *strError = [dictRes objectForKey:@"err"];
NSString *strInsertedId = [[[dictRes objectForKey:@"data"]objectAtIndex:0] objectForKey:@"insertId"];
NSLog(@"The Success is - %@",strSuccess);
NSLog(@"Error is - %@",strError);
NSLog(@"Inserted id is - %@",strInsertedId);
}
else {
NSLog(@"The response starts with array");
}
以下、手動でコードを試してみましたが、正常に動作します。文字列を使用してjsonを作成し、結果を確認しました。
NSString *strJson = @"{ \"success\": \"Y\", \"data\": [{\"insertId\": \"1\" }],\"err\": \"\"}" ;
NSError *jsonError;
NSDictionary *dictRes = [NSJSONSerialization JSONObjectWithData: [strJson dataUsingEncoding:NSUTF8StringEncoding] options:kNilOptions error:&jsonError];
NSLog(@"The response are - %@",dictRes);
NSString *strSuccess = [dictRes objectForKey:@"success"];
NSString *strError = [dictRes objectForKey:@"err"];
NSString *strInsertedId = [[[dictRes objectForKey:@"data"]objectAtIndex:0] objectForKey:@"insertId"];
NSLog(@"The Success is - %@",strSuccess);
NSLog(@"Error is - %@",strError);
NSLog(@"Inserted id is - %@",strInsertedId);
出力結果は、の
このような恐ろしい質問への回答は投稿しないでください。あなたがやっていることは、このサイトの悪い質問を奨励することです。代わりに、投票を閉じて自分の努力を示す質問に努力してください。 – rmaddy
可能な複製である[どのように私はObjective-CのでJSONをパースしますか?](https://stackoverflow.com/questions/5547311/how-do- i-parse-json-with-objective-c) –
cw park私のコードを試してください。うまくいきます。 – user3182143