gpt4 book ai didi

ios - 如何在 iOS 中解析复杂的 JSON 数据

转载 作者:行者123 更新时间:2023-11-28 19:50:46 87 4
gpt4 key购买 nike

我正在使用 php 获取 json 数据,这是响应。

{"array":[{"Category":{"charity_id":"2","charity_name":"GiveDirectly","charity_amt":"0.20"}}]}

这是我的 Objective-c 代码

NSError *err;
NSURL *url=[NSURL URLWithString:@"url"];
NSURLRequest *req=[NSURLRequest requestWithURL:url];
NSData *data = [NSURLConnection sendSynchronousRequest:req returningResponse:nil error:&err];

NSDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:0 error:&err];

if ([json isKindOfClass:[NSDictionary class]]){
NSArray *yourStaffDictionaryArray = json[@"array"];
if ([yourStaffDictionaryArray isKindOfClass:[NSArray class]]){
for (NSDictionary *dictionary in yourStaffDictionaryArray) {

for(NSDictionary *dict in dictionary[@"Category"]){

NSLog(@"%@",[[((NSString*)dict) componentsSeparatedByString:@"="] objectAtIndex:0] );


}

}
}
}

但这只返回名称而不是值。我在这个网站上搜索了大部分问题,但没有任何帮助。请帮助我,我是 iOS 的新手。

谢谢

字典输出是

{
"charity_amt" = "0.20";
"charity_id" = 2;
"charity_name" = GiveDirectly;
}

最佳答案

您不需要执行 ComponentSeparatedByString。一旦你获得了 @"Category"的 NSDictionary,你就可以通过使用它的键来获得它的值。

有点像

if ([json isKindOfClass:[NSDictionary class]]){
NSArray *yourStaffDictionaryArray = json[@"array"];
if ([yourStaffDictionaryArray isKindOfClass:[NSArray class]]){
for (NSDictionary *dictionary in yourStaffDictionaryArray) {

NSDictionary *dict = dictionary[@"Category"];
NSLog(@"%@",dict[@"charity_id"]);
}
}
}

关于ios - 如何在 iOS 中解析复杂的 JSON 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29386877/

87 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com