ruby-on-rails - 格式化日期 ruby

标签 ruby-on-rails ruby date datetime

我有一个格式为 2015-03-09T11:09:00.000Z 的日期字符串。如何将其转换为 yyyy-mm-dd 格式?

我试过了,

require 'date'
string = "2015-03-09T11:09:00.000Z"
date = Date.strptime(string,"%Y%m%d")

它给出了, ArgumentError:无效日期

我想要以下输出“2015-03-09”

有人可以给我一些方向吗?我究竟做错了什么?谢谢。

最佳答案

你几乎做对了。只是在指定日期格式时犯了一个小错误。您只需将:"%Y%m%d" 更改为:"%Y-%m-%d"。然后,它就可以工作了!

require 'date'
string = "2015-03-09T11:09:00.000Z"
Date.strptime(string,"%Y-%m-%d").to_s
# > "2015-03-09"

要查看所有可用的日期格式,请查看 documentation .

How do I convert this to yyyy-mm-dd format?

如上述文档所示,您可以使用 '%Y-%m-%d' 格式,其工作方式类似于您所需的 yyyy-mm-dd 格式。

关于ruby-on-rails - 格式化日期 ruby ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32108950/

相关文章:

ruby-on-rails - rails 在生产服务器中包含 CarrierWave::RMagick 错误

mysql - 编辑 Rails 迁移表不会影响生成的表

Php Date 函数在实时服务器中不起作用

java - 如何在Java中将日期转换为UTC?

ruby-on-rails - 如何在 Rails 3 中验证非模型表单?

ruby-on-rails - Ruby 混入和调用 super 方法

ruby-on-rails - Rails 4 session.id 偶尔为零

ruby - 事件连接的瘦服务器 : How to find no. 上的 Sinatra?

ruby - 学习 Ruby,我从哪里开始?

mysql - 检索具有最小日期的行中的所有列?