2016-04-08 79 views
0

當您在Ruby中使用Time類,如果時間低於10就會降爲零,僅輸出相應的整數,例如:輸出的時間正確

def time_test 
    t = Time.now 
    puts "#{t.hour}:#{t.min}:#{t.sec}" 
end 

5.times do 
    time_test 
    sleep(20) 
end 

#<= 11:48:24 
#<= 11:48:44 
#<= 11:49:4 
#<= 11:49:24 
#<= 11:49:44 
#=> 5 

現在我的問題是這樣的。假設我想在它所屬的位置添加零點,並希望有時間看,就像它在微波爐(減去12小時時鐘部分)上一樣。與hour:min:sec

如果秒,分鐘或小時低於10,我會如何使腳本輸出零?預期產出示例:

#<= 11:48:24 
#<= 11:48:44 
#<= 11:49:04 #<= 
#<= 11:49:24 
#<= 11:49:44 
#=> 5 

回答

1

您可以使用strftime方法。

Time.now.strftime("%H:%M:%S") 

或者更簡潔

Time.now.strftime("%T") 

我用this documentation