JSON NSNumber 返回错误
JSON NSNumber returning incorrectly
我从 JSON 和 Objective-C 开始,我已经从服务器检索了数据,并且得到了预期的 NSDictionary
。
例如,我的字典中有两个值。
length
和 start
.
length
return 符合预期,NSNumber
、268
。但是,start
显然也是一个 NSNumber
(我希望它是这样)正在丢弃一长串数字,就好像它的格式不正确一样。
例如start
= 1423113951
.
如何确定我接收到的数据类型?它被正确解析了吗?我应该如何处理它?
我知道 start
是一个数字,它应该 return 类似于 length
但是我得到的长数字在每次运行时几乎都是一样的,所以它显然不是正确格式化。
我通过简单地记录我从以下位置返回的 NSDictionary
来获得这些值:
NSMutableDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
一些额外的细节,这是我对数据的要求:
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://secretAddress"]];
NSData *data = [NSData dataWithContentsOfURL:url];
NSError *error;
NSMutableDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
NSLog(@"%@", json);
可以理解,这可能是服务器如何将它发回给我的,但目前我不知道它是如何发送的。
每当我在解析 JSON 数据时遇到问题,我要做的第一件事就是在我解析数字的代码行上放置一个断点,然后检查我的内容NSDictionary 项目:
如您在此示例中所见,XCode 报告我的 JSON 网络服务中的 NoteID
是一个 NSNumber
,但很高兴让我将其值提取到 int
.
因此,从这里开始:检查您的 Web 服务数据的内容,看看它是否为您指明了正确的方向。
我从 JSON 和 Objective-C 开始,我已经从服务器检索了数据,并且得到了预期的 NSDictionary
。
例如,我的字典中有两个值。
length
和 start
.
length
return 符合预期,NSNumber
、268
。但是,start
显然也是一个 NSNumber
(我希望它是这样)正在丢弃一长串数字,就好像它的格式不正确一样。
例如start
= 1423113951
.
如何确定我接收到的数据类型?它被正确解析了吗?我应该如何处理它?
我知道 start
是一个数字,它应该 return 类似于 length
但是我得到的长数字在每次运行时几乎都是一样的,所以它显然不是正确格式化。
我通过简单地记录我从以下位置返回的 NSDictionary
来获得这些值:
NSMutableDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
一些额外的细节,这是我对数据的要求:
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://secretAddress"]];
NSData *data = [NSData dataWithContentsOfURL:url];
NSError *error;
NSMutableDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
NSLog(@"%@", json);
可以理解,这可能是服务器如何将它发回给我的,但目前我不知道它是如何发送的。
每当我在解析 JSON 数据时遇到问题,我要做的第一件事就是在我解析数字的代码行上放置一个断点,然后检查我的内容NSDictionary 项目:
如您在此示例中所见,XCode 报告我的 JSON 网络服务中的 NoteID
是一个 NSNumber
,但很高兴让我将其值提取到 int
.
因此,从这里开始:检查您的 Web 服务数据的内容,看看它是否为您指明了正确的方向。