Clojure:
Analyser une date depuis une chaîne de caractères
Comment faire :
Clojure, étant un langage JVM, vous permet d’utiliser directement les bibliothèques de dates et d’heures de Java. Commençons par l’interopérabilité Java intégrée puis explorons comment utiliser une bibliothèque tierce populaire, clj-time, pour des solutions plus idiomatiques en Clojure.
Utiliser l’interopérabilité Java
Clojure peut directement tirer parti de java.time.LocalDate
de Java pour analyser des dates à partir de chaînes de caractères :
(require '[clojure.java.io :as io])
; Analyser une date en utilisant l'interopérabilité Java
(let [date-str "2023-04-01"
date (java.time.LocalDate/parse date-str)]
(println date))
; Sortie : 2023-04-01
Utiliser clj-time
Une bibliothèque plus idiomatique en Clojure pour traiter les dates et les heures est clj-time
. Elle encapsule Joda-Time, une bibliothèque complète pour les opérations de dates et d’heures. Tout d’abord, vous devrez ajouter clj-time
aux dépendances de votre projet. Voici comment vous analysez une chaîne de date en utilisant clj-time
:
; Assurez-vous d'ajouter [clj-time "0.15.2"] à votre project.clj sous :dependencies
(require '[clj-time.format :as fmt]
'[clj-time.core :as time])
; Définir un formateur
(let [formatter (fmt/formatter "yyyy-MM-dd")
date-str "2023-04-01"
parsed-date (fmt/parse formatter date-str)]
(println parsed-date))
; Sortie : #object[org.joda.time.DateTime 0x76eccb5d "2023-04-01T00:00:00.000Z"]
Ces exemples illustrent le processus de base d’analyse de date. Les deux méthodes sont utiles, mais clj-time
peut offrir une approche plus centrée sur Clojure avec des fonctionnalités supplémentaires pour des exigences complexes.