class MkTime::Argument
Public Class Methods
new(arg)
click to toggle source
# File lib/mk_time/argument.rb, line 3 def initialize(arg) @arg = arg end
Public Instance Methods
get_utc()
click to toggle source
¶ ↑
引数取得 * コマンドライン引数を取得して日時の妥当性チェックを行う * コマンドライン引数無指定なら、現在日時とする。 @return: utc (Time Object)
¶ ↑
# File lib/mk_time/argument.rb, line 15 def get_utc (puts Const::MSG_ERR_1; return) 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 usec = @arg.split(//).size > 14 ? @arg[14..-1].to_s : "0" (puts Const::MSG_ERR_2; return) unless Date.valid_date?(year, month, day) (puts Const::MSG_ERR_2; return) if hour > 23 || min > 59 || sec >= 60.0 d = usec.to_s.split(//).size return Time.new( year, month, day, hour, min, sec + Rational(usec.to_i, 10 ** d), "+00:00" ) end