(require '[clj-time.core :as t])
(require '[clj-time.format :as f])
현재시간 구하기
(def now (t/now))
+9 타임존의 2015/11/30일 Instant 구하기
(t/from-time-zone (t/date-time 2015 11 27) (t/time-zone-for-offset 9))
a부터 b까지 하루 간격의 instant 구하기
(def a (t/from-time-zone (t/date-time 2015 11 27) (t/time-zone-for-offset 9)))
(def b (t/from-time-zone (t/date-time 2015 12 25) (t/time-zone-for-offset 9)))
(take-while #(t/after? b %) (p/periodic-seq a (t/days 1)))
ISO8601을 DateTime으로 바꾸기
(f/parse "2014-08-12T01:05:00+09:00”)
(t/to-date-time "2014-08-12T01:05:00+09:00”)
DateTime의 TimeZone을 바꾸기 (전후가 같은 instant이다)
(t/to-time-zone (f/parse "2014-08-01T00:00:00+09:00") (t/time-zone-for-id "Asia/Seoul")
DateTime을 ISO8601 String (UTC timezone) 으로 바꾸기
(f/unparse (f/formatters :date-time-no-ms) now)
DateTime을 특정 TimeZone 표현으로 바꾸기
(def iso8601-in-seoul (f/with-zone (f/formatters :date-time-no-ms) (t/time-zone-for-id "Asia/Seoul")))
(f/unparse iso8601-in-seoul now)
DateTime을 특정 TimeZone 표현의 yyyyMMdd-HHmm 형식으로 바꾸기
(f/unparse (f/formatter "yyyyMMdd-HHmm" tz) now)