iOS RestKit 0.2 解析本地 Json 的最佳方法是啥
Posted
技术标签:
【中文标题】iOS RestKit 0.2 解析本地 Json 的最佳方法是啥【英文标题】:iOS RestKit 0.2 What is the best way to parse local JsoniOS RestKit 0.2 解析本地 Json 的最佳方法是什么 【发布时间】:2014-03-27 10:57:43 【问题描述】:我阅读了许多关于通过 Http 请求解析 json 的文章,但几乎没有人回答关于解析本地 json 字符串的最直接方法是什么的问题。我在这里找到了一些不同的解决方案Deserializing local NSString of JSON into objects via RestKit (no network download),其中一些有效,而另一些则无效。是否有任何“官方”RestKit 支持本地 JSON 字符串反序列化?
【问题讨论】:
【参考方案1】:幸运的是,Apple 在 ios 5.0 中提供了“NSJSONSerialization”类。序列化您的数据。 第 1 步:将本地 JSON 字符串转换为“NSData”
NSString *strLocalJSON = @"data= "some data""; //just for ex. may not be valid one
NSData *dataJSON = [str dataUsingEncoding:NSUTF8StringEncoding];
第二步:
id jsonobject= [NSJSONSerialization JSONObjectWithData:dataJSON options:NSJSONReadingMutableContainers error:nil]; // resulting object may contain Dictionary or Array depends on your localjson
更多信息请参考https://developer.apple.com/library/ios/documentation/Foundation/Reference/NSJSONSerialization_Class/Reference/Reference.html
【讨论】:
【参考方案2】:如果您的 JSON 在文件中,则在创建 RestKit 对象管理器时使用file://
NSURL。其他一切正常。
如果 JSON 已经存在于代码中,那么您应该将其保存到文件中,或者为什么需要进行任何映射?无论如何,您可以使用NSJSONSerialization
和RKMappingOperation
的组合。
【讨论】:
以上是关于iOS RestKit 0.2 解析本地 Json 的最佳方法是啥的主要内容,如果未能解决你的问题,请参考以下文章
RestKit 0.2 映射 Core Data <--> JSON 与一对多关系