Haskell:
Pobieranie aktualnej daty
Jak to zrobić:
Standardowa biblioteka Haskella, base, dostarcza moduł Data.Time, który oferuje funkcjonalność do pracy z datami i czasem. Oto jak użyć go do uzyskania aktualnej daty:
import Data.Time (getCurrentTime, utctDay)
main :: IO ()
main = do
now <- getCurrentTime
let today = utctDay now
print todayPrzykładowe wyjście:
2023-04-12Dla większej elastyczności, takiej jak formatowanie daty czy praca z różnymi strefami czasowymi, biblioteka time jest nieoceniona. Oto jak można sformatować aktualną datę:
import Data.Time
main :: IO ()
main = do
now <- getCurrentTime
timezone <- getCurrentTimeZone
let zoneNow = utcToLocalTime timezone now
putStrLn $ formatTime defaultTimeLocale "%Y-%m-%d" zoneNowTo drukuje aktualną datę w formacie RRRR-MM-DD, dostosowaną do lokalnej strefy czasowej.
Dodatkowo, dla wsparcia biblioteki firm trzecich, time jest wysoce polecana i często używana w społeczności Haskella ze względu na jej rozległe możliwości manipulacji datą i czasem. Przykłady powyżej wykorzystują tę bibliotekę.
Jeśli potrzebujesz bardziej wszechstronnej manipulacji datą, w tym parsowania ze stringów czy operacji arytmetycznych z datami i czasem, eksploracja dodatkowych funkcji w ramach Data.Time będzie korzystna.