gpt4 book ai didi

ios - SBJson反序列化问题

转载 作者:行者123 更新时间:2023-11-29 04:40:51 24 4
gpt4 key购买 nike

您好,我在 JSON 反序列化方面遇到问题。

我使用的是 SBJson,数据是从 .net webservice 返回的。

这是返回的 JSON(缩短)

{
"id": "1",
"result": [
{
"questionID": 21,
"question": "What is the secret of eternal life?"
},
{
"questionID": 20,
"question": "What is the meaning of life?"
}
]
}

到目前为止我已经使用了以下代码

-(void) dataLoaded:(NSData*)data {

NSString* jsonString = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease];

NSDictionary *jsonObject = [jsonString JSONValue];

NSLog(@"data : %@", [jsonObject valueForKey:@"result"]);
}

以下行 [jsonObject valueForKey:@"result"] 返回以下数据

(
{
question = "What is the secret of eternal life?";
questionID = 21;
},
{
question = "What is the meaning of life?";
questionID = 20;
}
)

如何将数据放入数组中?

这是我第一次使用 Json,所以我不完全确定发生了什么。

谢谢米克

最佳答案

您已经正在取回数组...您可以使用类似的方法来创建指向该数组的指针:

NSDictionary *jsonObject = [jsonString JSONValue];
NSArray *myJsonArray = [jsonObject valueForKey:@"result"];

编辑(一些评论后)

由于您正在记录 [jsonObject valueForKey:@"result"] 并且 NSLog 会打印您发布的内容,因此可以肯定该对象是一个 NSArray.

您可以像这样计数和记录(注意 %d):

int c = [myJsonArray count];
NSLog("My array's count is: %d", c);

关于ios - SBJson反序列化问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10412307/

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