Clojure:
Analisi di una data da una stringa
Come fare:
Clojure, essendo un linguaggio JVM, ti consente di utilizzare direttamente le librerie di date e orari di Java. Iniziamo con l’interoperabilità Java integrata e poi esploriamo come utilizzare una popolare libreria di terze parti, clj-time, per soluzioni più idiomatiche di Clojure.
Utilizzando l’Interop Java
Clojure può sfruttare direttamente java.time.LocalDate
di Java per l’analisi delle date da stringhe:
(require '[clojure.java.io :as io])
; Analisi di una data usando l'interop Java
(let [date-str "2023-04-01"
date (java.time.LocalDate/parse date-str)]
(println date))
; Output: 2023-04-01
Utilizzando clj-time
Una libreria più idiomatica di Clojure per la gestione di date e orari è clj-time
. Essa incapsula Joda-Time, una libreria completa per le operazioni di date e orari. Prima cosa, devi aggiungere clj-time
alle dipendenze del tuo progetto. Ecco come analizzi una stringa di date usando clj-time
:
; Assicurati di aggiungere [clj-time "0.15.2"] al tuo project.clj sotto :dependencies
(require '[clj-time.format :as fmt]
'[clj-time.core :as time])
; Definisci un formatter
(let [formatter (fmt/formatter "yyyy-MM-dd")
date-str "2023-04-01"
parsed-date (fmt/parse formatter date-str)]
(println parsed-date))
; Output: #object[org.joda.time.DateTime 0x76eccb5d "2023-04-01T00:00:00.000Z"]
Questi esempi dimostrano un’analisi di base delle date. Entrambi i metodi sono utili, ma clj-time
può fornire un approccio più centrato su Clojure con funzionalità aggiuntive per requisiti complessi.