Haskell:
קבלת התאריך הנוכחי

איך לעשות:

ספריית הסטנדרט של Haskell, base, מספקת את המודול Data.Time שמציע פונקציונליות לעבודה עם תאריכים וזמנים. הנה איך להשתמש בו כדי לקבל את התאריך הנוכחי:

import Data.Time (getCurrentTime, utctDay)

main :: IO ()
main = do
    now <- getCurrentTime
    let today = utctDay now
    print today

דוגמת פלט:

2023-04-12

ליותר גמישות, כמו עיצוב התאריך או עבודה עם אזורי זמן שונים, הספרייה time היא בלתי נפרדת. הנה איך אפשר לעצב את התאריך הנוכחי:

import Data.Time

main :: IO ()
main = do
    now <- getCurrentTime
    timezone <- getCurrentTimeZone
    let zoneNow = utcToLocalTime timezone now
    putStrLn $ formatTime defaultTimeLocale "%Y-%m-%d" zoneNow

זה מדפיס את התאריך הנוכחי בתבנית YYYY-MM-DD, מותאם לאזור הזמן המקומי.

בנוסף, לתמיכה בספריות של גורמים שלישיים, time מומלצת מאוד ונעשה בה שימוש נרחב בקרב קהילת Haskell בשל יכולותיו הרחבות למניפולציה של תאריכים וזמנים. הדוגמאות למעלה משתמשות בספרייה זו.

אם אתה צריך ממשיכות מורכבת יותר של מניפולציית תאריכים, כולל פרסור ממחרוזות או פעולות אריתמטיות עם תאריכים וזמנים, חקירת פונקציות נוספות בתוך Data.Time תהיה מועילה.