使用ruby将utc时间转换为系统当前时间

时间:2015-03-20 23:06:57

标签: ruby datetime utc

如何使用ruby将UTC时间转换为当前系统?

我正在使用Time.now.utc.iso8601在ruby中获取UTC格式,我想使用ruby将其转换为系统当前时间。

有人可以帮我提供示例代码吗?

2 个答案:

答案 0 :(得分:1)

Ruby Time类有一个getlocal方法:

t = Time.now.utc => 2015-03-21 00:29:47 UTC t.getlocal => 2015-03-20 20:29:47 -0400 见这里:http://ruby-doc.org/core-2.2.0/Time.html#method-c-local

答案 1 :(得分:0)

我认为你的意思是你想要保持原样,只需改变时区?如果是这样,这应该让你到达你需要去的地方。无需将其转换为iso8601,但如果您已经拥有它,则只需使用strptime并忽略最后的Z

> now = Time.now
=> 2015-03-20 17:26:22 -0700
> now.utc
=> 2015-03-21 00:26:22 UTC
> now.utc.asctime
=> "Sat Mar 21 00:26:22 2015"
> Time.parse(now.utc.asctime)
=> 2015-03-21 00:26:22 -0700