【发布时间】:2019-09-13 16:00:13
【问题描述】:
调用Timex.to_naive_datetime 转换为没有时区的天真日期时间会从输入日期时间中减去一个小时
我尝试过其他时区,排除了夏令时转换的可能性。
d = %DateTime{
year: 2000,
month: 2,
day: 29,
zone_abbr: "CET",
hour: 23,
minute: 0,
second: 7,
microsecond: {0, 0},
utc_offset: 3600,
std_offset: 0,
time_zone: "Europe/Warsaw"
}
#=> # DateTime<2000-02-29 23:00:07+01:00 CET Europe/Warsaw>
Timex.to_naive_datetime(d)
#=> ~N[2000-02-29 22:00:07]
d2 = %DateTime{
year: 2019,
month: 3,
day: 2,
zone_abbr: "PST",
hour: 23,
minute: 0,
second: 7,
microsecond: {0, 0},
utc_offset: 3600,
std_offset: 0,
time_zone: "America/Los_Angeles"
}
#=> #DateTime<2019-03-02 23:00:07+01:00 PST America/Los_Angeles>
Timex.to_naive_datetime(d2)
#=> ~N[2019-03-02 22:00:07]
我希望将第一个日期时间转换为~N[2000-02-29 23:00:07],但输出为~N[2000-02-29 22:00:07]。
【问题讨论】: