【发布时间】:2016-09-27 00:22:54
【问题描述】:
如果您在美国的 Playground 中运行这样的线路:
let today = Date()
您将在源代码右侧看到如下输出:
"Sep 26, 2016, 8:17 PM"
这似乎是日期,以当地时区显示,使用中等日期和时间样式。
它是如何工作的?
如果您尝试打印日期:
print("today = \(today)"
您会看到“Today = 2016-09-27 00:18:55 +0000\n”,这是 UTC,并且似乎是 unix 日期格式。
当您第一次创建日期时,Playground 使用什么函数来显示日期?有没有办法从代码或调试控制台获取该输出格式?
到目前为止,我已经创建了一个日期格式化程序,用于记录日期、在控制台中显示日期等。
【问题讨论】:
-
您可以继承并覆盖与CustomPlaygroundQuicklookable的一致性
-
这不是我要问的。我希望能够在代码中使用
print(aDate),或在调试器控制台中使用e aDate,并在我当前的时区和语言环境中获取中等格式的日期。 -
我已经为 Date 创建了一个扩展,可以让我说 print(aDate.localDateString),但显然,在用户的语言环境中以中等格式显示日期的能力潜伏在某个地方。也许它只是在操场上?
标签: nsdateformatter swift3 swift-playground