在Swift中获取时区名称,如缩写

时间:2017-11-10 09:05:31

标签: ios swift timezone

我不明白,所有这一切都是突然的,下面的代码开始提供时区缩写名称而不是时区实际名称。

let timezone = TimeZone.current.identifier

结果: GMT

期待:亚洲/加尔各答

Playground output

感谢任何帮助。

1 个答案:

答案 0 :(得分:3)

注意: GMT并不代表亚洲/加尔各答的时区。 (它应该给你IST)你应该检查你的设备/模拟器时区设置。如果您正在测试模拟器,请检查您的(mac)系统时区。

您的快照表明 - 您正在尝试使用Playground编辑器。 尝试为Mac系统设置位置/时区。

  

Mac系统►(转至)系统偏好►日期时间►时区(此处可以查看系统时区)

enter image description here

enter image description here

我尝试使用IST / India的给定结果代码:

print("**> TimeZone.current.identifier - \(TimeZone.current.identifier)\n")
// TimeZone.current.identifier - Asia/Kolkata

print("**> TimeZone.current.description - \(TimeZone.current.description)\n")
// TimeZone.current.description - Asia/Kolkata (current)

print("**> TimeZone.current.debugDescription - \(TimeZone.current.debugDescription)\n")
// TimeZone.current.debugDescription - Asia/Kolkata (current)