我需要将objective-c对象序列化并反序列化为JSON,以存储在CouchDB中.人们是否有通用解决方案最佳实践的示例代码?我查看了一些JSON框架,它们在NSDictionary/NSArray级别停止.i、 很多框架将NSDictionary/NSArray序列化并反序列化为JSON.但我仍然需要将NSDictionary转换为Objective-C对象.

To make things more complex, my Object A can have reference to an NSArray/NSDictionary of Object Bs.

我的问题与这个问题非常相似,只是增加了收款要求.

Instantiating Custom Class from NSDictionary

推荐答案

听起来像是在寻找一个序列化库,它可以让你将自己的自定义类的对象转换成JSON,然后再重新构建它们.属性列表类型(NSArray、NSNumber等)的序列化已经存在于第三方库中,甚至内置于OS X 10.7和iOS 5中.

所以,我认为答案基本上是"不".一两个月前,我在cocoa dev邮件列表上问了这个问题,最接近我的是Mike Abdullah,他指着他写的一个实验图书馆:

https://github.com/mikeabdullah/KSPropertyListEncoder

This archives objects to in-memory property lists, but as I said there are already APIs for converting those into JSON.

还有一款名为Objectify的商业应用程序声称可以做类似的事情:

http://tigerbears.com/objectify/

我有可能最终实现你的要求,作为我的CouchCocoa库的一部分,但我还没有投入到这项任务中.

https://github.com/couchbaselabs/CouchCocoa

Json相关问答推荐

Vega通孔信号中的动态梯度

ArcGIS json到Geojson的变换

递归解码嵌套列表(具有任意深度的列表列表)

未知的META规范,无法验证.[规范v1.0.1]

数据清理设计不良的 JSON 数据 - 需要有关最佳策略的建议

在 PostgreSQL 中 Select 分层 JSON 作为表

流编写器未写入 webapi 中的 JSON 文件

如何从 JSON 中获取数据并通过 vb6 在网格中显示

如何将从嵌套 Select 返回的空值转换为空数组?

Rails 控制器无需编码即可渲染 json

字典和对象的模型创建问题

Swift - 将图像从 URL 写入本地文件

如何使用 Serde 使用顶级数组反序列化 JSON?

使用 c# 通用地展平 Json

编写 JSON 日志(log)文件的格式?

如何从Typescript 中的json响应中获取日期对象

将错误消息作为 JSON 对象发送

在 JSON 对象中强制执行非空字段

alert Json 对象

无法将 System.String 转换或转换为 Class 对象