📅  最后修改于: 2023-12-03 15:11:36.421000             🧑  作者: Mango
在 Ruby 中,我们可以使用 Time
类来处理日期、时间和时间间隔。其中一个有用的方法是 strftime
,它可以将时间格式化为一个字符串。
下面是 Time
类的一些常见用法:
# 获取当前时间
t = Time.now
# 将时间格式化为一个字符串
t.strftime("%Y-%m-%d %H:%M:%S")
# 将字符串解析为时间对象
Time.parse("2021-01-01 12:00:00")
# 从时间对象获取小时数
t.hour
其中,strftime
方法最常见的参数是一些格式化代码,它们将被替换为相应的日期或时间字符串:
%Y
:年份(四位数)%m
:月份(01-12)%d
:日(01-31)%H
:小时(00-23)%M
:分钟(00-59)%S
:秒(00-60)%p
:上午或下午(AM/PM)%Z
:时区的名称(例如 EST,PDT 等)通过将这些代码组合在一起,我们可以生成任何我们需要的日期或时间格式。
例如,将时间格式化为 24 小时制时钟格式:
t.strftime("%H:%M:%S")
# => "12:34:56"
需要注意的是,在 strftime
方法中使用 %H
会返回 24 小时制时间,而使用 %I
则会返回 12 小时制时间。
还可以将字符串解析为时间对象,例如:
t = Time.parse("2021-01-01 12:00:00")
这将返回一个 Time
对象,代表给定时间字符串所对应的时间。
最后,我们还可以通过访问 Time
对象的 .hour
属性来获取小时数:
t.hour
# => 12
以上是 Ruby 中处理时间和日期的基本操作,希望对你有所帮助!