如何将 Any 转化为数据

How to turn Any into Data

我想将 Any? 保存在 Swift 中(到 FileManager)。

它可以是任何东西,也可以是不符合 Codable 的类型(比如 SCNNodes)。

我想把它包装成Data。我知道,我不能用 PropertyListEncoder.

你能让我更容易理解它是如何工作的吗?

Could you make it easy for me to understand how it works?

没有。 Any 的全部含义是它可以是任何东西。但不是任何东西都可以变成数据。这就是为什么像 Codable 和 NSCoding(SCNNode 符合)这样的协议存在的原因——以及为什么 Any 不能符合它们中的任何一个。这些协议挑选出可以转换为数据的类型。