为什么这是偏移量为+2的iso8601日期解析



我有以下JSON:

{"dtime" : "2020-08-26T15:30:00+03:00"}

对其进行分析,得出以下日期:

=> 2020-08-26 14:30:00 +0200

为什么它有+2偏移而不是+3偏移?

编辑:我使用的是Rails 3.2.13和ActiveSupport 3.2.13。我正在尝试使用来解析字符串

Time.parse(string)

然而,我注意到,如果我用解析它

DateTime.parse(string)

我得到了一个正确的偏移量。

我没有必要回答这个问题,因为我不使用Ruby。也就是说,只看标准库,原因似乎是Time.parse包括对localtime的调用,它将解析结果转换为您的本地时区。

我怀疑你实际上是在GMT+02执行这个代码。您可以向Time.new查询。我在格林尼治标准时间07跑步。

>> Time.new
=> 2014-05-16 18:51:00 -0700

通过将结果传递给localtime,可以将结果转换为任何时区。

>> require 'Time'
=> true
>> t = Time.parse("2020-08-26T15:30:00+03:00")
=> 2020-08-26 05:30:00 -0700
>> t.localtime("+03:00")
=> 2020-08-26 15:30:00 +0300

相关内容

  • 没有找到相关文章

最新更新