Ruby on rails Rails与解析日期有关

Ruby on rails Rails与解析日期有关,ruby-on-rails,datetime,rufus-scheduler,Ruby On Rails,Datetime,Rufus Scheduler,我有按以下格式输出的日期时间字符串: 03/27/2014 07:52:47 PM 我正在使用一个名为rufus scheduler的gem,它以YYYY-mm-dd-hh-mm-ss(时区偏移量)形式获取字符串。有没有简单的方法可以将我的第一个字符串转换成rufus调度器喜欢的格式的字符串 我知道我可以做的一个方法是创建一个解析字符串的方法,这样我就可以从中创建一个新的datetime对象,然后以rufus喜欢的格式调用strftime,但我想知道是否有更有效的方法来解决我的问题。请检查 此

我有按以下格式输出的日期时间字符串:

03/27/2014 07:52:47 PM
我正在使用一个名为rufus scheduler的gem,它以YYYY-mm-dd-hh-mm-ss(时区偏移量)形式获取字符串。有没有简单的方法可以将我的第一个字符串转换成rufus调度器喜欢的格式的字符串

我知道我可以做的一个方法是创建一个解析字符串的方法,这样我就可以从中创建一个新的datetime对象,然后以rufus喜欢的格式调用strftime,但我想知道是否有更有效的方法来解决我的问题。

请检查

此外,这是一个非常棒的工具。

请查看


此外,它也是一个非常棒的工具。

您可以使用
DateTime::strtime
进行解析,并使用
DateTime#strftime
再次格式化它

首先
需要“日期”
,然后:

2.0.0-p451 :021 > DateTime.strptime("03/27/2014 07:52:47 PM", "%m/%d/%Y %H:%M:%S %p").strftime("%Y-%m-%d %H-%M-%S %z")
 => "2014-03-27 19-52-47 +0000"

您可以使用
DateTime::strtime
进行解析,并使用
DateTime#strftime
再次对其进行格式化

首先
需要“日期”
,然后:

2.0.0-p451 :021 > DateTime.strptime("03/27/2014 07:52:47 PM", "%m/%d/%Y %H:%M:%S %p").strftime("%Y-%m-%d %H-%M-%S %z")
 => "2014-03-27 19-52-47 +0000"
他是你的朋友

require 'chronic'

p Chronic.parse('03/27/2014 07:52:47 PM')
他是你的朋友

require 'chronic'

p Chronic.parse('03/27/2014 07:52:47 PM')

你的意思是我可以调用Time.strftime(“03/27/2014 07:52:47 PM”,%Y-%m-%dT%l:%m:%S%z”),它不在乎第一个参数是字符串吗?它能帮我转换吗?不,你需要一个时间物体。看起来raviolicode有一个不错的选择。我假设您已经有了一个可以调用strftime方法的时间对象。您的意思是我可以调用Time.strftime(“03/27/2014 07:52:47 PM”,%Y-%m-%dT%l:%m:%S%z”),而且第一个参数是字符串也不重要吗?它能帮我转换吗?不,你需要一个时间物体。看起来raviolicode有一个不错的选择。我假设您已经有了一个可以调用strftime方法的时间对象。我不知道parse方法。谢谢你的帮助!不知道解析方法。谢谢你的帮助!