| Top Page |

指定した日の間の日数を計算するプログラム

ruby で書かれています.

Updated on 2002-05-20



#     指定した日の間の日数を計算する ruby script
#
#        copyright May 2002 by TAKENAKA, A.

require 'date'  # 日付のクラスライブラリを利用する

# 引数に日付が指定されてなかったら,使い方を表示

if ARGV.length == 0
    puts "usage: ruby daydif.rb yyyy/mm/dd [yyyy/mm/dd]"
    puts "       ruby daydif.rb yyyy-mm-dd [yyyy-mm-dd]"
    exit
end

# 日付オブジェクトの生成
# 日付指定文字列が正しいかどうかのチェックは省略(手抜き)

yr, mo, dy = ARGV[0].split('[/-]')  # 年月日の区切りは / か -
date0 = Date.new(yr.to_i, mo.to_i, dy.to_i)

if ARGV[1].nil?        # 日付がひとつしか指定されてなかったら
    date1 = Date.today # もう一方は今日.
else
    yr, mo, dy = ARGV[1].split('/')
    date1 = Date.new(yr.to_i, mo.to_i, dy.to_i)
end

date0, date1 = date1, date0 if date1 - date0 < 0  # date0 < date1 にする

printf "%d days from %s to %s\n", date1 - date0, date0.to_s, date1.to_s

| Top Page |