RUBY中的日期格式

Rub*_*ist 3 ruby rubygems ruby-on-rails

在这里,在RUBY我需要一个像这样的格式

"2011年2月1日11.00"

.我试过这个

"Time.now.utc.strftime("%B %d %Y %R")"
Run Code Online (Sandbox Code Playgroud)

但我需要格式化后缀为st,nd,rd,th等的数字.请提出建议.

Zac*_*ker 5

如果您特别想要"2011年2月1日11.00",则需要添加自己的DATE_FORMATS并调用它.

Time::DATE_FORMATS[:custom_ordinal] = lambda { |time| time.strftime("%B #{ActiveSupport::Inflector.ordinalize(time.day)} %Y %H.%M") }

puts Time.now.to_s(:custom_ordinal)
# February 28th 2011 02.12
Run Code Online (Sandbox Code Playgroud)

如果您想要的是一个序数日期并且"2011年2月28日02:12"有效,则调用Time.now.to_s(:long_ordinal)