次の月の一日前のDateTimeオブジェクトのdayメソッドが今月の終わりの日付。 追記:id:udzuraによると、DateTime.new(t.year, t.month, -1)と書けるらしい。このほうがオブジェクトをたくさん作らなくていいのでスマートだ。 #!/usr/bin/env ruby require 'erb' require 'date' t = DateTime.now max_day = (DateTime.new(t.year, t.month + 1) - 1).day ERB.new(DATA.read).run(binding) __END__ Content-Type: text/plain;charset=UTF-8 <%= t.month %>月は<%= max_day %>日まで。