gpt4 book ai didi

json - NSJSONSerialization 不处理负整数

转载 作者:行者123 更新时间:2023-12-03 17:38:17 25 4
gpt4 key购买 nike

我正在尝试将 JSON 文件解析为 NSArray,对于正数来说一切都很好。然而,该 JSON 文件中的所有负整数都会生成高数字,例如“[11] __NSCFNumber * (long)72057594037927933”。我怎样才能让它发挥作用?

这是我的 JSON 文件:

[0,1,2,3,4,5,6,7,8,9,10,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11]

这里是代码:

 NSError* error;
NSData* data = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"https://some/json/file.json"]];
NSMutableArray* array = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&error];

最佳答案

Xcode 并不总是将好的值打印到 Xcode 的调试区域(其中显示上下文的实时值)。

我将您的代码放入我自己的项目中,当我单步执行每一行时,我确实看到了“eachNumber __NSCFNumber * (long)72057594037927934 {0xbfffffffffffffe3}位,但是如果我尝试打印出将数组的值输入控制台,您将看到正确的“-2”结果。

你自己尝试一下。我在你的后面添加了这些行:

NSMutableArray* array = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&error];

NSLog(@"array is %@", array);

for(id eachNumber in array)
{
NSLog(@"eachNumber is %@", eachNumber);
}

关于json - NSJSONSerialization 不处理负整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33732490/

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