Rubyでは、Dateのインスタンスをinspectすると、以下のような馴染みのない数値が出力されます。

   1  Date.today.inspect
   2  => "#<Date: 4909185/2,0,2299161>"

これはDateクラスが日付の内部表現としてRationalを利用しているためですが、inspectしたときにこの表現が出てきても、日付がわからないので困りますね。 そこで、以下のようにDate#inspectを定義してあげると、 人間に優しい表現になります。

   1  class Date
   2    def inspect
   3      strftime '#<Date: %x>'
   4    end
   5  end
   6  
   7  >> Date.today
   8  => #<Date: 05/06/08>

これならDateが何日なのかわかりやすいですね。

strftime%xはロケールによって出力が変わるので、 お使いのPCの環境によっては、上記のような出力にならない事もあります。

See Also

posted by Png genki on Tue 6 May 2008 at 11:44

Search Words:

  • inspect2 date2 strftime1 意味1 date#inspect1 ruby1

Comments:

or Preview
Tags
ruby tips
Social Bookmarks
  • Delicious
  • B_entry562
  • Clip_16_12_w562