启动Swift 4,我有一个单元测试开始失败。我得到的时区数据似乎非常不正确。
以下工作代码:
let f1 = DateFormatter()
f1.dateFormat = "yyyy-MM-dd"
let d = f1.date(from: "1999-01-01")
let f2 = DateFormatter()
f2.dateFormat = "Z"
f2.string(from: d)
我在美国/洛杉矶,所以我得到了-0800
如果我使用此代码将1999年交换为1500:
let f1 = DateFormatter()
f1.dateFormat = "yyyy-MM-dd"
let d = f1.date(from: "1500-01-01")
let f2 = DateFormatter()
f2.dateFormat = "Z"
f2.string(from: d)
我得到-075258
这甚至是正确/允许的值吗?如何在ISO 8601中获得有效的用途?