Time.parse returns a Time object that does not have a timezone. I would like to keep the timezone information. Is there a better way to do this then the following code?
def parse_with_timezone( string_input)
/(.*)([+-]\d\d):?(\d\d)$/.match( string_input) do |match|
tz = ActiveSupport::TimeZone[match[2].to_i.hours + match[3].to_i.minutes]
tz.parse( match[1])
end
end
The input is a string like this “2012-12-25T00:00:00+09:00”. This function outputs a TimeWithZone object.
Were you looking for a specific timezone of the current local one?
Console was set at UTC for above but will work for whatever you have configured
I notice you’re trying to pass +9 so as an example
Gives you the right result.