日付を文字列に変換する

Clojure:
日付を文字列に変換する

How to (やり方):

Clojureでは、clj-timeライブラリを用いたり、JavaのSimpleDateFormatクラスを利用したりして日付を文字列に変換します。

;; clj-timeライブラリを使用する例(外部ライブラリのため、事前に追加が必要)
(require '[clj-time.format :as fmt])
(require '[clj-time.core :as time])

(let [formatter (fmt/formatters :basic-date-time)
      date-str (fmt/unparse formatter (time/now))]
  date-str)
;; 出力: "20231205T010203Z" (実行する日時によって異なります)

;; JavaのSimpleDateFormatを直接使う例
(import 'java.text.SimpleDateFormat)
(import 'java.util.Date)

(let [formatter (SimpleDateFormat. "yyyy-MM-dd'T'HH:mm:ss")
      date-str (.format formatter (Date.))]
  date-str)
;; 出力: "2023-12-05T01:02:03" (実行する日時によって異なります)

Deep Dive (深掘り):

日付の文字列変換は、プログラミングの歴史で長い間存在しています。clj-timeはJoda-Timeライブラリに基づいており、Clojureの日付と時刻の操作を簡単にしてくれます。しかしJava 8以降、java.timeパッケージ(JSR-310)が導入され、より便利なAPIが提供されています。clj-timeは過去のプロジェクトでよく見かけるものですが、新しいプロジェクトではjava.timeパッケージを使うことが推奨されています。変換に際しては、ロケール、タイムゾーン、形式を正しく指定することが重要です。

See Also (参照):