繁体   English   中英

解析具有从JSON消息生成的单个值的NSArray

[英]Parsing NSArray that has single value generated from a JSON message

我在这里梳理了问题,希望找到我所遇到的类似情况,但找不到。 我的问题涉及iOS 5中的NSJSONSerialization类,以及如何处理解析从JSONObjectWithData:options:error:方法返回的单个值。 返回的JSON数据是数组中的单个值,如下所示:

[1]

数据将是1(如上所述)或0,这取决于我正在使用的Web服务中执行的逻辑。 作为附带说明,Web服务是WCF REST服务。 在XCode中,将反序列化的JSON分配给临时NSArray对象后,调试器将显示以下内容:

po parsedData

(NSArray *) $43 = 0x06e2ee70 <__NSCFArray 0x6e2ee70>( 1 )

当我尝试使用ObjectAtIndex:从数组中获取值时,我得到了:

po [parsedData objectAtIndex:0]

(id) $44 = 0x06b1dad0 1

我的问题是: 1之前的十六进制值( 0x06b1dad0 )是多少? 也许是我无法访问的键或索引(我以为我只是没有深入了解数组以获得真正的价值)? 它与JSON的格式有关吗? 当我一直在思考时,我感觉格式已关闭。

我遇到的问题是我无法获取存储在JSON消息中的实际值-当我访问parsedData数组中的parsedData并将其分配给变量时,它仅返回十六进制值而不是1

强制转换为NSInteger可以实现以下目的:

po (NSInteger)[parsedData objectAtIndex:0]

(NSInteger) $45 = 112319184 1

任何对此的见解将不胜感激。 如果在论坛的其他地方已解决此问题,我深表歉意。

谢谢。

可能该对象是NSNumber,请尝试以下操作:

[[parsedData objectAtIndex:0] intValue];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM