您好我想使用Ruby
从CSV数组中减去时间时间[0]是12:12:00 AM 时间[1]是12:12:01 AM
这是我的代码
time_converted = DateTime.parse(time)
difference = time_converted[1].to_i - time_converted[0].to_i
p difference
然而,我得到了0
p time[0].to_i
给了我12
有没有办法解决这个问题?
答案 0 :(得分:2)
您可以使用Time#strptime来定义已解析字符串的格式。
在您的情况下,字符串为%I:%M:%S%p
。
%I
= 12小时时间%M
=分钟%S
=秒%p
=上午/下午指标所以解析你的例子:
require 'time'
time = %w(12:12:00AM 12:12:01AM)
parsed_time = time.map { |t| Time.strptime(t, '%I:%M:%S%p').to_i }
parsed_time.last - parsed_time.first
=> 1
答案 1 :(得分:-1)
使用Ruby DateTime类并将日期解析为该类的对象。