2014-10-02 5 views
0

단순히 Time.now의 덜 정밀하고 잘린 버전을 반환하기 만하면됩니다.Time.now의 정확도를 낮추는 방법?

Time.now을 실행하면 매우 정확한 객체 2014-10-02 14:49:47 -0400tim이 표시됩니다. 나는 단지 YYYY-MM-DD HH : MM : MM 만 원한다.

어떻게 Time.now 반환 개체의 정밀도를 캐스팅 할 수 있습니까?

답변

1

strftime()을 사용하면 시간 개체의 형식 문자열을 제공 할 수 있습니다. 형식 플래그의 목록은 문서에서 문서에

예를 찾을 수 있습니다

t = Time.new(2007,11,19,8,37,48,"-06:00") #=> 2007-11-19 08:37:48 -0600 
t.strftime("Printed on %m/%d/%Y") #=> "Printed on 11/19/2007" 
t.strftime("at %I:%M%p")   #=> "at 08:37AM" 

귀하의 예 :

t.strftime("%Y-%m-%d %T") #=> YYYY-MM-DD HH:MM:MM. 
+0

고맙습니다. – FluffyKittens

+0

@AdamJ 도와 드리겠습니다. 이 질문에 대한 답변을 얻으 셨다고 생각되면 해당 질문에 표시하십시오. – Grice

+0

미안해! – FluffyKittens

0

당신은 반올림 원래 시간 인 새로운 Time 개체를 만들 수 있습니다 가장 가까운 분 :

require 'time' 

t = Time.now 
    #=> 2014-10-02 12:40:22 -0700 
new_time = t + (t.sec >= 30 ? 60-t.sec : -t.sec) 
    #=> 2014-10-02 12:40:00 -0700 

t += 30 
    #=> 2014-10-02 12:40:52 -0700 
new_time = t + (t.sec >= 30 ? 60-t.sec : -t.sec) 
    #=> 2014-10-02 12:41:00 -0700 
관련 문제