如何在clojure中将当前日期设为YYYYMMDD?

时间:2015-06-27 02:33:38

标签: clojure

我使用以下代码:

(require '[clj-time.core :as time]
         '[clj-time.coerce :as tc]
         '[clj-time.format :as f])
 (f/unparse (f/formatter "yyyyMMdd") time/now)

但它会引发以下错误。

caused by: java.lang.ClassCastException: clj_time.core$now cannot be cast to org.joda.time.ReadableInstant

1 个答案:

答案 0 :(得分:2)

unparse函数需要2个参数。首先是格式,它应该是org.joda.time.format.DateTimeFormatter的一个实例,你可以通过调用

来正确创建它。
 (f/formatter "yyyyMMdd")

第二个参数是日期时间,它应该是org.joda.time.DateTime的一个实例,在这里你做的是小错误。你现在正在传递clojure函数时间,而不是传递DateTime,你应该做的就是像这样调用函数

(f/unparse (f/formatter "yyyyMMdd") (time/now))
相关问题