我正在尝试格式化有关当前时区的日期
让formatter = DateFormatter()
formatter.dateFormat =“ yyyy-MM-dd HH:mm:ss Z”
formatter.timeZone = TimeZone.current
让日期=日期(timeIntervalSince1970:1470309336)
打印(formatter.string(来自:日期))
它打印2016–08–04 13:15:36 +0200. 截止到今天,2017年2月3日,我希望它是2016–08–04 13:15:36 +0100因为我现在在格林尼治标准时间+1。 我们尚未输入夏令时。
事实证明, DateFormatter会考虑目标日期,而不是我们当前的时间,这可能是您想要的,也可能不是。 目标日期是2016年8月4日,即夏令时期间
如果要使用当前时间的时区,这是解决方法
- VI —没有声音
- 我的灵感来源:—安娜·阿赫玛托娃(Anna Akhmatova)
- Fim do Mundo
- 科尔蒂纳斯
- Uma jovem na Academia Cascavelense de Letras
formatter.timeZone = TimeZone(secondsFromGMT:TimeZone.current.secondsFromGMT())
根据需要打印2016–08–04 12:15:36 +0100 。
此外, TimeZone具有isDaylightSavingTime ,这可能会有所帮助