web-dev-qa-db-fra.com

Quelles sont les bibliothèques de date et heure de Clojure?

Je n'ai pas trouvé de bibliothèques traitant de l'heure et de la date dans http://clojure.org/libraries . Y at-il, ou est-ce quelque chose que je dois comprendre comment faire directement avec Java?

43
dan

clj-time est un wrapper autour de Java Joda-Time.

Si vous utilisez Leiningen ou Maven, vous pouvez l'ajouter à votre projet via Clojars .

Il y a beaucoup d'exemples sur la page GitHub qui montrent comment faire de l'arithmétique des dates et de l'analyse/du formatage. Par exemple:

(in-minutes (duration (date-time 1986 10 2) (date-time 1986 10 14)))
;; gives 17280

(def custom-formatter (formatter \"yyyyMMdd\"))

(parse custom-formatter "20100311")
;; gives #<DateTime 2010-03-11T00:00:00.000Z>

(unparse custom-formatter (date-time 2010 10 3))
;; gives "20101003"
52
Matt Curtis

C'est une vieille question, mais la nouvelle classe LocalDate dans Java 8 est un moyen non nécessaire pour y parvenir.

(ns example
  (:import (Java.time LocalDate format.DateTimeFormatter)))

(def formatting (DateTimeFormatter/ofPattern
                 "MM/dd/yyyy"))

(LocalDate/parse "08/06/2015" formatting)
4
wegry

J'ai utilisé clj-time , qui enveloppe Joda Time sans aucun problème par le passé.

Il existe également dm3/clojure.Java-time , qui encapsule l'API Java 8 Date-Time.

Il existe également un espace de noms associé depuis Clojure 1.8: clojure.instant .

1
nha