我正在使用Ruby。我想将UTC转换为各种时间转换。我关注这里的链接。
我的代码是:
class TimeFormat
def convert_zone(to_zone)
original_zone = ENV["TZ"]
utc_time = dup.gmtime
ENV["TZ"] = to_zone
to_zone_time = utc_time.localtime
ENV["TZ"] = original_zone
return to_zone_time
end
end
t = TimeFormat.new
t.convert_zone("US/Pacific")
但它表明:
undefined method `gmtime' for #<TimeFormat:0x9043388> (NoMethodError)
这里怎么了?
您可以将类名更改为Time。
然后称之为
t = Time.new
t.convert_zone("US/Pacific")
gmtime是Time类的一个方法。
如果在调用'convert_zone'时出现错误,表示"未定义的方法`gmtime'",则可能是在传递一些东西,而不是所需的Time对象作为参数。
这里有一些类似的东西,你可能会寻找。http://www.java2s.com/Code/Ruby/Time/Converttimetotimezone.htm
您可以扩展Time类并定义自己的方法。