Een datum uit een string parsen

Clojure:
Een datum uit een string parsen

Hoe te:

Clojure leunt voor het parsen van datums op Java, dus we zullen hier java.time.LocalDate gebruiken:

(require '[java-time :as jt])

(defn parse-date [date-str]
  (jt/local-date "yyyy-MM-dd" date-str))

(println (parse-date "2023-04-05"))

Output:

#object[java.time.LocalDate 0x4b121a5e "2023-04-05"]

Hier is java-time een Clojure-bibliotheek die de java.time API’s omvat. Het is idiomatischer Clojure dan ruwe Java interop.

Diepere duik

Clojure, geboren in 2007, is een moderne Lisp die draait op de JVM. Het biedt interoperabiliteit met Java, inclusief datumafhandeling. Voor java.time (geïntroduceerd in Java 8), gebruikte Java java.util.Date en java.text.SimpleDateFormat, houterig en minder thread-safe.

clj-time, een Joda-Time wrapper, was populair voor Clojure voor java-time, maar Joda-Time wordt nu als verouderd beschouwd. Tegenwoordig is java-time de go-to aangezien het rond het java.time pakket wikkelt, dat veruit superieur is en standaard onveranderlijk.

Er zijn ook pure Clojure-bibliotheken, zoals tick, maar die bouwen ook bovenop Java’s java.time om praktische redenen. Het onderliggende java.time-pakket gebruikt het ISO kalendersysteem maar ondersteunt ook andere systemen. Zo’n flexibiliteit betekent dat Clojure-programma’s niet alleen JVM-vriendelijk zijn, maar ook internationaal klaar.

Zie Ook

Blijf verkennen en blij coderen!