Haskell:
Nykyisen päivämäärän hankkiminen
Kuinka:
Haskellin vakiokirjasto, base
, tarjoaa Data.Time
-moduulin, joka tarjoaa toiminnallisuuden työskentelyyn päivämäärien ja aikojen kanssa. Tässä on miten sitä käytetään nykyisen päivämäärän saamiseen:
import Data.Time (getCurrentTime, utctDay)
main :: IO ()
main = do
now <- getCurrentTime
let today = utctDay now
print today
Esimerkkitulostus:
2023-04-12
Lisäjoustavuuden saamiseksi, kuten päivämäärän muotoiluun tai työskentelyyn eri aikavyöhykkeiden kanssa, time
-kirjasto on korvaamaton. Tässä on miten saatat muotoilla nykyisen päivämäärän:
import Data.Time
main :: IO ()
main = do
now <- getCurrentTime
timezone <- getCurrentTimeZone
let zoneNow = utcToLocalTime timezone now
putStrLn $ formatTime defaultTimeLocale "%Y-%m-%d" zoneNow
Tämä tulostaa nykyisen päivämäärän YYYY-MM-DD
-muodossa, mukautettuna paikalliseen aikavyöhykkeeseen.
Lisäksi kolmannen osapuolen kirjastotuen saamiseksi, time
-kirjastoa suositellaan erittäin ja sitä käytetään usein Haskell-yhteisössä sen laajojen päivämäärän ja ajan käsittelykykyjen vuoksi. Yllä olevat esimerkit hyödyntävät tätä kirjastoa.
Jos tarvitset kattavampaa päivämäärän käsittelyä, mukaan lukien jäsentäminen merkkijonoista tai aritmeettiset operaatiot päivämäärien ja aikojen kanssa, Data.Time
-moduulin lisätoimintoihin tutustuminen on hyödyllistä.