Ruby-将格式化的日期转换为时间戳

小说

我需要将日期字符串转换为Unix时间戳格式。我从API获得的字符串如下所示:

2015-05-27T07:39:59Z

.tr()我得到:

2015-05-27 07:39:59

这是一种很常规的日期格式。但是,Ruby无法将其转换为Unix TS格式。我试过了,.to_time.to_i但是我不断收到NoMethodError错误消息。

在PHP中,此功能strtotime()非常适合此功能。Ruby有类似的方法吗?

帕特里克·奥斯奇(Patrick Oscity)

您的日期字符串为RFC3339格式。您可以DateTime将其解析为一个对象,然后将其转换Time为UNIX时间戳,最后转换为UNIX时间戳。

require 'date'

DateTime.rfc3339('2015-05-27T07:39:59Z')
#=> #<DateTime: 2015-05-27T07:39:59+00:00 ((2457170j,27599s,0n),+0s,2299161j)>

DateTime.rfc3339('2015-05-27T07:39:59Z').to_time
#=> 2015-05-27 09:39:59 +0200

DateTime.rfc3339('2015-05-27T07:39:59Z').to_time.to_i
#=> 1432712399

对于更通用的方法,可以使用DateTime.parse代替DateTime.rfc3339,但是如果知道格式,则最好使用更具体的方法,因为它可以防止由于日期字符串中的歧义而导致错误。如果您有自定义格式,则可以使用DateTime.strptime它进行解析

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将对象作为时间戳转换为格式化日期

来自分类Dev

将日期格式转换为时间戳

来自分类Dev

将日期转换为时间戳

来自分类Dev

使用C ++将时间戳转换为格式化的日期时间

来自分类Dev

将格式化的 Javascript 时间/日期转换为通用时间戳

来自分类Dev

如何将多个日期格式的字符串转换为时区格式的时间戳

来自分类Dev

Ruby函数格式化日期

来自分类Dev

将日期和时间转换为时间戳

来自分类Dev

将日期和时间转换为时间戳

来自分类Dev

将日期/时间转换为时间戳

来自分类Dev

如何在Ruby中将这种时间格式转换为unix时间戳?

来自分类Dev

将日期dd / mm / yyyy格式从表单转换为时间戳?

来自分类Dev

如何使用jQuery将ISO 8601格式的日期转换为时间戳?

来自分类Dev

如何使用jQuery将ISO 8601格式的日期转换为时间戳?

来自分类Dev

将字典的值转换为时间戳格式

来自分类Dev

Bash将日期转换为时间戳

来自分类Dev

将日期转换为时间戳UTC

来自分类Dev

将日期(以毫秒为单位)转换为时间戳

来自分类Dev

Bash-将日期转换为时间戳

来自分类Dev

将日期unix转换为时间戳

来自分类Dev

Open Office Calc:将日期转换为时间戳

来自分类Dev

C#将日期转换为时间戳

来自分类Dev

将日期转换为时间戳UTC

来自分类Dev

将日期字符串转换为时间戳

来自分类Dev

SQL:将日期转换为时间戳

来自分类Dev

PHP-将午夜日期转换为时间戳

来自分类Dev

将 GMT 日期转换为时间戳

来自分类Dev

Android - 将日期转换为时间戳

来自分类Dev

如何将日期时间转换为时间格式