我有一个 Ruby 中的 Date
对象。
当我执行 myobj.month
时,我得到了 8
。如何获得带有前导零的日期月份,例如 08
。
day
同理。
最终我想要的是 2015/08/05
。
可以使用格式化字符串输出
示例:
puts sprintf('%02i', 8)
puts '%02i' % 8
%02i
是用于表示带有前导零的两位整数(数字)的格式。
具体细节可以在sprintf文档中找到。Date#strftime
方法或 Time#strftime
方法。require 'time'
puts Time.new(2015,8,1).strftime("%m")
%d - 月份中的日期,零填充 (01..31)
可以用来获取日期中的天数。例如>> Time.new(1,2,5).strftime("%d") => "05"
- Roman Kiselenkomyobj.strftime("%m")
来获取月份。对于你期望的结果myobj.strftime("%Y/%m/%d")
,请参考这篇文档:http://ruby-doc.org/stdlib-2.2.3/libdoc/date/rdoc/Date.html#method-i-strftime - TusharFixnum
。 - Cary Swoveland