【问题标题】:How to Extract a Enum value from an NSDictionary in iOS obtained by parsing a JSON response如何从通过解析 JSON 响应获得的 iOS 中的 NSDictionary 中提取 Enum 值
【发布时间】:2011-06-16 15:18:14
【问题描述】:

我有一个 .net JSON Web 服务,它在查询时返回一个 json 字符串。我获取该 JSON 字符串并使用 SBJSON Parser 将其解析为 NSDictionary。现在我的 .net Web 服务向响应中添加了一个枚举值,当它解析为 NSdictionary 时看起来像这样

“名称”:0,

我需要在 iOS 客户端提取这个值。任何想法我该怎么做。

我尝试做以下事情

int *val = [[dictionary objectForKey:@"Name"] intValue];

我知道这不是正确的做法。我想我需要将结果存储在 NSNumber 对象中,但是如何从 NSDictionary 中提取 NSNumber 值。

任何帮助将不胜感激。

谢谢

【问题讨论】:

  • NSLog 表示 NSDecimalNumber。所以当我这样做时我得到了价值。 NSDecimalNumber val = [字典 objectforkey:@"Name"];感谢您的帮助尼克。

标签: ios json enums nsdictionary nsnumber


【解决方案1】:

你所做的是有效的。您提取并发送 intValue 消息的中间对象是由 json 解析器创建的 NSNumber。如果你想要一个 NSNumber,只需这样做:

    NSNumber *name = [dictionary objectForKey:@"Name"];

【讨论】:

    猜你喜欢
    • 2020-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-24
    • 1970-01-01
    • 2021-08-12
    相关资源
    最近更新 更多