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 内的额外功能将会非常有益。