【问题标题】:Ruby timezone offset problemRuby时区偏移问题
【发布时间】:2011-09-23 05:11:17
【问题描述】:

我需要将时区偏移量分配给 Time 以获取指定偏移量的当前日期。 这与 rails 无关,因此我需要一个纯 Ruby 格式化程序/解析器来执行此操作。

谢谢。

【问题讨论】:

    标签: ruby timezone


    【解决方案1】:

    这是我发现的:

    require 'date'
    local = DateTime.now 
    new_offset = Rational(0, 24) #put the offset you want as first argument
    utc = local.new_offset(new_offset)
    

    【讨论】:

      【解决方案2】:

      返回时区与 UTC 之间的偏移量(以秒为单位)。

         t = Time.gm(2000,1,1,20,15,1)   #=> 2000-01-01 20:15:01 UTC
         t.gmt_offset                    #=> 0
         l = t.getlocal                  #=> 2000-01-01 14:15:01 -0600
         l.gmt_offset                    #=> -21600
      

      【讨论】:

      • 但是我如何将这个时间转换为例如偏移量+7?我的问题是我想在特定的偏移量(明确指定)而不是 UTC 或机器本地时间获得星期几。那么在创建日期/时间 obj 时如何分配时区偏移量?
      【解决方案3】:
      #As a string
      t = Time.new(2011,6,27,14,10,0, "+07:00")
      # or in seconds from UTC
      t = Time.new(2011,6,27,14,10,0, 7*60*60)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-09-25
        • 2011-08-20
        • 2021-01-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多