使用標準函式庫取得今天的日期
任務
日期和時間 / 取得今天的日期
未使用任何套件
此食譜僅使用 OCaml 標準函式庫。程式碼
隨 OCaml 標準函式庫提供的 unix
函式庫,提供了處理日期和時間的函式。
let today = Unix.localtime (Unix.time ());;
let day = today.Unix.tm_mday;;
月份編號為 0 到 11。
let month = today.Unix.tm_mon + 1;;
年份從 1900 年開始計算。
let year = today.Unix.tm_year + 1900;;
Printf.printf "The current date is %04d-%02d-%02d\n"
year month day;;
討論
- 理解
Unix.localtime
和Unix.time
:Unix.localtime
函式將從Unix.time
取得的時間戳記(返回自 Unix 紀元以來的目前時間)轉換為本地時間,並以tm
結構表示。此結構包含tm_year
、tm_mon
和tm_mday
等欄位,分別代表年、月和日。 - 月份和年份調整: 在 OCaml 的
Unix
模組中,月份是以零為索引(0 代表一月,11 代表十二月),而年份是自 1900 年以來的年數。請不要忘記調整這些值以取得人類可讀的日期。 - 替代函式庫: 若要執行更複雜的日期時間操作,請考慮使用像是
calendar
或timedesc
等外部函式庫,它們提供更多功能,如時區處理和日期算術。