我正在使用Ruby。我想将UTC转换为各种时间转换。我按照here链接。
我的代码是:
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)
这里有什么问题?
答案 0 :(得分:2)
您可以将班级名称更改为时间。
然后将其称为,
t = Time.new
t.convert_zone("US/Pacific")
gmtime是Time类的一种方法。
答案 1 :(得分:1)
如果在调用'convert_zone'时说“未定义的方法`gmtime'”时出错,则可能会传递一些内容而不是所需的Time对象作为参数。
以下是您可能会寻找的类似内容。 http://www.java2s.com/Code/Ruby/Time/Converttimetotimezone.htm
您可以扩展Time类并定义自己的方法。