swift - 解码期间的新纪元日期
问题描述
我有以下 json 对象。
{"date" : 1596304900, "name" : "registration"}
我有以下结构
struct Classroom : Codable{
let date : Int
let name : String
}
正如您在 json 对象中看到的,date
实际上是纪元时间,并且希望在解码操作期间将其转换为人类可读的日期。我想知道在解码过程中需要如何完成。
解决方案
使您date
的日期而不是 Int,并使用 JSONDecoder 并将其日期解码策略设置为纪元解码器:
一切都会像魔术一样正确发生。(在您给出的示例中,日期将是 2020 年 8 月 1 日,格林威治标准时间 18:01:40。)
请注意,这不是“人类可读的”;这将是一个日期。您不存储人类可读的;你表现出人类可读的。您仅在界面中使用格式化程序处理它。
推荐阅读
- c# - 在迁移时使用 ef core 插入数据的问题
- azure-active-directory - AzureActiveDirectory - 禁用选择帐户
- asp.net-mvc - JavaScript 语言服务已被禁用,有人有这方面的经验吗?
- mysql - 如何将 json 值添加到 db 列?
- c# - 在 XMLDocument 上加载 url 时出现 (500) 内部服务器错误
- list - 如何在 Haskell 中选择长度为“l”的随机子序列?
- laravel - 将变量传递给资产中的 .js 文件
- javascript - 如何解决 TypeError: Network Request Failed for react project running at android device
- node.js - 在 Typescript 中扩大全局范围不起作用
- silverstripe - Silverstripe 4.7 自定义 SiteConfig onAfterWrite 成功消息