Использование with-locale
(http://clj-time.github.io/clj-time/doc/clj-time.format.html#var-with-locale)
(require '[clj-time.core :as time] '[clj-time.format :as fmt])
(import '[java.util Locale])
(def custom-formatter (fmt/formatters :rfc822))
(def ja-formatter (fmt/with-locale custom-formatter (Locale. "ja")))
(fmt/unparse ja-formatter (time/date-time 2010 10 3))
> "日, 03 10 2010 00:00:00 +0000"
-UPDATE-
Пример использования Joda времени DateTimeFormat:
(require '[clj-time.core :as time] '[clj-time.format :as fmt])
(import '[java.util Locale])
(import '[org.joda.time.format DateTimeFormat])
(def custom-formatter (DateTimeFormat/longDate))
(def ja-formatter (fmt/with-locale custom-formatter (Locale. "ja")))
(fmt/unparse ja-formatter (time/date-time 2010 10 3))
"2010/10/03"
(def us-formatter (fmt/with-locale custom-formatter (Locale. "us")))
(fmt/unparse us-formatter (time/date-time 2010 10 3))
"October 3, 2010"
Я попробовал это, и это работает с rfc822, но что, если я хочу формат «Понедельник, 29 октября 2014 года» и соответствующие формы в Корее, Китае, Германии и т. Д.? На данный момент я пошел с этим решением: ** (. Format (SimpleDateFormat/getDateInstance 0 (Locale/US) (t.coerce/date-clj-date-date)) ** - и дает мне правильно отформатированные даты для разных языков. – RaceCondition
вы можете создать DateTimeFormat от Joda, поскольку clj-time - это оболочка вокруг joda-time. http://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat. html – edbond
Это выглядит хорошо! Спасибо за ответ! – RaceCondition