日付処理サンプル
練習がてらいくつか書いてみました。
-- 現在時刻の取得(UTC) import Data.Time main = do t <- getCurrentTime putStr $ show t
-- 現在時刻の取得 import Data.Time main = do t <- getCurrentTime tz <- getCurrentTimeZone putStr $ show $ utcToLocalTime tz t
-- 現在日付の取得 import Data.Time main = do t <- getCurrentTime tz <- getCurrentTimeZone putStr $ show $ localDay $ utcToLocalTime tz t
-- 3日後の取得 import Data.Time main = do t <- getCurrentTime tz <- getCurrentTimeZone putStr $ show $ addDays 3 (localDay $ utcToLocalTime tz t)
-- 現在年の取得 import Data.Time main = do t <- getCurrentTime tz <- getCurrentTimeZone putStr $ show $ (\(y,_,_)->y) $ toGregorian (localDay $ utcToLocalTime tz t)
-- 日付の差を取得 import Data.Time day1 = fromGregorian 2008 1 2 day2 = fromGregorian 2008 3 3 main = do print $ diffDays day1 day2 -- -61 print $ diffDays day2 day1 -- 61
-- 閏年判定 import Data.Time main = do print $ isLeapYear 2008 -- True print $ isLeapYear 2009 -- False