פרסום תאריך ממחרוזת

Clojure:
פרסום תאריך ממחרוזת

איך לעשות:

Clojure, בתור שפה המבוססת על JVM, מאפשרת לך להשתמש ישירות בספריות התאריכים והזמנים של Java. בואו נתחיל עם השילוב הטבעי של Java ואז נבדוק איך להשתמש בספרייה צד שלישי פופולרית, clj-time, לפתרונות יותר אידיומטיים ב-Clojure.

שימוש בשילוב עם Java

Clojure יכולה להשתמש ישירות ב-java.time.LocalDate של Java לפרס תאריכים ממחרוזות:

(require '[clojure.java.io :as io])

; פרס תאריך באמצעות שילוב עם Java
(let [date-str "2023-04-01"
      date (java.time.LocalDate/parse date-str)]
  (println date))
; פלט: 2023-04-01

שימוש ב-clj-time

ספרייה יותר אידיומטית לטיפול בתאריכים וזמנים ב-Clojure היא clj-time. היא עוטפת את Joda-Time, ספרייה מקיפה לפעולות עם תאריכים וזמנים. ראשית, תצטרכו להוסיף את clj-time לתלות של הפרויקט שלכם. הנה איך אתם פורסים מחרוזת תאריך באמצעות clj-time:

; הקפידו להוסיף את [clj-time "0.15.2"] ל-project.clj שלכם תחת :dependencies

(require '[clj-time.format :as fmt]
         '[clj-time.core :as time])

; הגדרת פורמטר
(let [formatter (fmt/formatter "yyyy-MM-dd")
      date-str "2023-04-01"
      parsed-date (fmt/parse formatter date-str)]
  (println parsed-date))
; פלט: #object[org.joda.time.DateTime 0x76eccb5d "2023-04-01T00:00:00.000Z"]

דוגמאות אלה מדגימות פרס תאריך בסיסי. שני השיטות שימושיות, אך clj-time יכולה לספק גישה יותר ממוקדת ב-Clojure עם פונקציונליות נוספת לדרישות מורכבות יותר.