我有一个调用API的脚本。 API返回dateTime.iso8601对象。我似乎无法弄清楚如何在分钟上获得领先的零点。
我在这里看过其他问题,说使用strftime,但会引发undefined method 'strftime'
。
我尝试了以下内容:
systems.each do |system|
time = system["last_checkin"].strftime('%H:$M')
print "#{system['name']} #{time}\n"
end
systems.each do |system|
time = system["last_checkin"]
hour = time.strftime('%H')
min = time.strftime('%m')
print "#{system['name']} #{hour}:#{min}\n"
end
还有一些我不再记得的了。
我该如何接近这个?
答案 0 :(得分:1)
答案 1 :(得分:0)
在挖掘并拼凑出我收到的信息片段后,我终于找到了对我有用的东西。
我只是格式化了time.min字符串:
min = "%02d" % time.min
我还在time.hour中添加了12
以获得24小时格式。
systems.each do |system|
time = system["last_checkin"]
hour = time.hour + 12
min = "%02d" % time.min
print "#{system['name']} #{hour}:#{min}\n"
end
我想有一种更简洁的方法可以做到这一点,但作为Ruby的新手,我对此感到满意。
编辑: 在撰写我的解决方案jtzero时,我发布了更为简洁的方式。