【问题标题】:Ruby: Format already formatted date stringRuby:格式化已经格式化的日期字符串
【发布时间】:2011-09-19 16:55:30
【问题描述】:

我有一个返回的日期字符串是这样的:02-22-2011我需要将其转换为 2011 年 2 月 22 日...无论如何,在 Ruby 中是否可以轻松完成此操作?

【问题讨论】:

    标签: ruby date time


    【解决方案1】:

    想通了!我使用慢性 (http://chronic.rubyforge.org/)

    Chronic.parse('02-22-2011').strftime("%b %d, %Y")

    【讨论】:

      【解决方案2】:

      您也可以使用Time.parse,而不是仅仅为此需要gem。

      【讨论】:

      • 但是Date.parse('02-22-2011')end 出错了。 (Date.parse('02-22-2011') 工作正常。- 至少在我的德国 PC 上。也许是本地化问题。使用Date.strptime,您就没有这个问题。
      【解决方案3】:

      我会推荐 Date.strptime。这是一种恢复 strftime。 然后就可以使用 strftime 来获取日期的字符串版本了。

      require 'date'
      p Date.strptime('02-22-2011', '%m-%d-%Y') #-> #<Date: 2011-02-22 (4911229/2,0,2299161)>
      p Date.strptime('02-22-2011', '%m-%d-%Y').strftime("%b %d, %Y") #"Feb 22, 2011"
      

      【讨论】:

        猜你喜欢
        • 2011-02-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-01-07
        • 1970-01-01
        • 2023-03-14
        • 1970-01-01
        相关资源
        最近更新 更多