Swift时区转换问题

时间:2015-12-01 10:01:23

标签: ios swift swift2 nsdate

在我的游乐场中,我创建了一个简单的代码示例,将时间从我的本地区域转换为 \123\456\1.xml \123\456\2.xml \123\789\1.xml \123\789\2.xml \456\222\1.xml etc...

    https://xml.mydomain.com/123/456/1.xml?UN=username&PW=password
    or
    https://xml.mydomain.com/456/222/1.xml?UN=username&PW=password
    or
    https://xml.mydomain.com/456/222/1.xml  (UN and PW embedded in header request)

所有代码都运行正常,但我有一个与代码输出相关的问题。为什么打印输出显示我当地时间前2小时的时间。转换时间是2000年。

enter image description here

1 个答案:

答案 0 :(得分:1)

  1. NSTimeZone.systemTimeZone如果无法确定系统时区,则会返回GMT时间,我猜这是因为您正在使用游乐场。

  2. 您只使用小时,分钟和秒钟将日期转换为字符串dateFormat = "HH:mm:ss",这样字符串就不会有关于年份的任何信息,那就是' s为什么当你使用它转换回NSDate它显示2000时,因为它没有适当的信息来知道它是什么年份。