Haskell:
Få det aktuella datumet
Hur man gör:
Haskells standardbibliotek, base
, tillhandahåller Data.Time
-modulen som erbjuder funktionalitet för att arbeta med datum och tider. Så här använder du den för att få det aktuella datumet:
import Data.Time (getCurrentTime, utctDay)
main :: IO ()
main = do
now <- getCurrentTime
let today = utctDay now
print today
Exempelutdata:
2023-04-12
För mer flexibilitet, som att formatera datumet eller arbeta med olika tidszoner, är time
-biblioteket ovärderligt. Så här kan du formatera det aktuella datumet:
import Data.Time
main :: IO ()
main = do
now <- getCurrentTime
timezone <- getCurrentTimeZone
let zoneNow = utcToLocalTime timezone now
putStrLn $ formatTime defaultTimeLocale "%Y-%m-%d" zoneNow
Detta skriver ut det aktuella datumet i formatet ÅÅÅÅ-MM-DD
, justerat till den lokala tidszonen.
Dessutom, för stöd från tredjepartsbibliotek, rekommenderas time
starkt och används ofta inom Haskell-gemenskapen för dess omfattande möjligheter till datum- och tidshantering. Exemplen ovan använder detta bibliotek.
Om du behöver mer omfattande datumhantering, inklusive tolkning från strängar eller aritmetiska operationer med datum och tider, kommer utforskning av ytterligare funktioner inom Data.Time
att vara fördelaktigt.