Sha256: a30c897e50bfc6ac4bcd25b297e5715bf22451b611516476fc5165fa4041d1a4
Contents?: true
Size: 1.35 KB
Versions: 2
Compression:
Stored size: 1.35 KB
Contents
module EphJcg class Argument def initialize(args) @arg = args.shift end #========================================================================= # 引数取得 # # * コマンドライン引数を取得して日時の妥当性チェックを行う # * コマンドライン引数無指定なら、現在日時とする。 # # @return: jst (UNIX time) #========================================================================= def get_jst unless @arg now = Time.now return Time.new( now.year, now.month, now.day, now.hour, now.min, now.sec ).to_f end (puts MSG_ERR_1; return 0) unless @arg =~ /^\d{8}$|^\d{14}$/ year, month, day = @arg[ 0, 4].to_i, @arg[ 4, 2].to_i, @arg[ 6, 2].to_i hour, min, sec = @arg[ 8, 2].to_i, @arg[10, 2].to_i, @arg[12, 2].to_i (puts MSG_ERR_2; return 0) unless Date.valid_date?(year, month, day) (puts MSG_ERR_2; return 0) if hour > 23 || min > 59 || sec > 59 if sprintf("%04d%02d%02d%02d%02d%02d", year, month, day, hour, min, sec) \ < "#{Y_MIN}0101090000" || sprintf("%04d%02d%02d%02d%02d%02d", year, month, day, hour, min, sec) \ > "#{Y_MAX + 1}0101085959" puts MSG_ERR_3 return 0 end return Time.new(year, month, day, hour, min, sec).to_f end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
eph_jcg-0.1.1 | lib/eph_jcg/argument.rb |
eph_jcg-0.1.0 | lib/eph_jcg/argument.rb |