【发布时间】:2017-07-09 17:37:55
【问题描述】:
我的应用程序中有一个文本字符串,用于传达时间和日期,例如let time = "2017-07-09T09:17:08+00:00"。我想获取这个以 UTC 为单位的字符串,并将其转换为以 EST 表示时间的字符串。对于我的示例,生成的字符串将是2017-07-09T05:17:08+00:00。如何做到这一点?
我尝试过使用
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ"
dateFormatter.timeZone = TimeZone.current
let date = dateFormatter.date(from:time!)!
但是打印日期会给我相同的 UTC 时间。
【问题讨论】:
-
您总是想要 EST 还是希望用户在他们自己的当地时间看到它?
-
@rmaddy 最好是当地时间。
-
仅供参考 -
2017-07-09T05:17:08+00:00不是 EST。那仍然是 UTC,只是 UTC 的较早时间。 -
@rmaddy 你是对的——我的错。
标签: ios swift date timezone nsdateformatter