Swift 我如何解读这个例子?

Swift 我如何解读这个例子?,swift,codable,Swift,Codable,我们在使用Swift 5上的可编码协议解码JSON中的元素时遇到困难: "expiration": 1620975599000, 每次我们得到一个疯狂的小数字时,我们都尝试将其转换为Int64、String和Double。请注意,该值不在引号中,因此字符串有问题。这将转换为什么数据类型?(应该是毫秒的时间戳)我用一个Double试了一下,得到了1620975599000.0。那么,你是如何得到那个“疯狂的小数字”的呢?但是,如果您将可编码属性设置为Date,则可以使用dec

我们在使用Swift 5上的可编码协议解码JSON中的元素时遇到困难:

"expiration": 1620975599000,

每次我们得到一个疯狂的小数字时,我们都尝试将其转换为Int64、String和Double。请注意,该值不在引号中,因此字符串有问题。这将转换为什么数据类型?(应该是毫秒的时间戳)

我用一个Double试了一下,得到了
1620975599000.0
。那么,你是如何得到那个“疯狂的小数字”的呢?但是,如果您将可编码属性设置为
Date
,则可以使用
decoder.dateDecodingStrategy=.millissecondssince1970
,它将自行完成。您最终试图将数字解码为
Date
对象的是什么?我怀疑您的问题在代码的其他地方。如果你把这个字段简化为一个对象,我希望它可以顺利工作。(这个数字很容易与64位平台上的Int和32位平台上的Int64匹配。)