【发布时间】:2011-09-19 16:55:30
【问题描述】:
我有一个返回的日期字符串是这样的:02-22-2011我需要将其转换为 2011 年 2 月 22 日...无论如何,在 Ruby 中是否可以轻松完成此操作?
【问题讨论】:
我有一个返回的日期字符串是这样的:02-22-2011我需要将其转换为 2011 年 2 月 22 日...无论如何,在 Ruby 中是否可以轻松完成此操作?
【问题讨论】:
想通了!我使用慢性 (http://chronic.rubyforge.org/)
Chronic.parse('02-22-2011').strftime("%b %d, %Y")
【讨论】:
您也可以使用Time.parse,而不是仅仅为此需要gem。
【讨论】:
Date.parse('02-22-2011')end 出错了。 (Date.parse('02-22-2011') 工作正常。- 至少在我的德国 PC 上。也许是本地化问题。使用Date.strptime,您就没有这个问题。
我会推荐 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"
【讨论】: