我的日期值如2016-11-19,时间值如2000-01-01 20:14:00 +0000
我想将其转换为正确的日期格式,它将显示如下所示的时间: 2016-11-20 04:14:00 +0000
有很多关于此的问题,但我很困惑。
答案 0 :(得分:1)
您需要将日期值转换为时间值:
>> date = Date.new(2016, 11, 19)
>> time = date.to_time
=> 2016-11-19 00:00:00 -0700
请注意,time
将设置为服务器所在时区的午夜。现在你有了一个时间对象,你可以为它添加秒数:
>> time_increment = Time.new(2000, 1, 1, 20, 14, 0)
>> seconds_increment = time_increment.seconds_since_midnight
=> 72840.0
>> new_time = time + seconds_increment
=> Sat, 19 Nov 2016 20:14:00 MST -07:00
答案 1 :(得分:1)
您可以使用Ruby strftime
日期时间格式。
喜欢
date_value.strftime('%Y-%m-%d %H:%M:%S') #=> 24-hour clock
date_value.strftime('%Y-%m-%d %I:%M:%S') #=> 12-hour clock
答案 2 :(得分:0)
谢谢大家!但是,我可以自己解决问题!
time = bid_end_time.hour.to_s + ":" + bid_end_time.min.to_s + ":" + bid_end_time.sec.to_s
date_time = bid_end_date.to_s + " " + time
bid_end_date_time = Time.zone.parse(date_time).utc