gpt4 book ai didi

ios - 使用 NSKeyedArchiver 从保存在 NSDictionary 中的 NSManagedObjects 生成 XML

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:52:01 26 4
gpt4 key购买 nike

我有一个 NSDictionary,其中包含一堆 NSManagedObject。然后我可以使用 NSKeyedArchiver 将其写入 NSData 对象。这些是使用 this method. 生成的哪个工作正常并允许我将模式的一部分保存到光盘,然后将其作为核心数据模型中的一组新对象读回。如果我使用 archivedDataWithRootObject 之一:或 archiveRootObject:toFile:,根据 documentation我可以看到存档的格式是 NSPropertyListBinaryFormat_v1_0,而我想在 NSPropertyListXMLFormat_v1_0 中进行序列化,这样我就可以将我的对象写入一个文件,然后在其他地方将它们作为普通的旧 XML 进行处理。 (事实上​​,我想在基于 Windows 的系统上从它们生成文档。)

1) 我有办法做到这一点吗?如果是这样怎么办?2)有没有更好的方法。

我想保持序列化的性质,因为我还想稍后将文件发送回 iOS 设备并重新创建对象模型。

最佳答案

  1. 使用 initForWritingWithMutableData: 创建您自己的 NSKeyedArchiver 实例。
  2. 使用 setOutputFormat:NSPropertyListXMLFormat_v1_0 设置格式。
  3. 使用 encodeObject:forKey: 对您的根对象进行编码。
  4. 调用finishEncoding

要取消存档您以这种方式编码的数据,您必须类似地实例化一个 NSKeyedUnarchiver

关于ios - 使用 NSKeyedArchiver 从保存在 NSDictionary 中的 NSManagedObjects 生成 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7650477/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com