【发布时间】:2018-06-03 13:57:44
【问题描述】:
main :: IO ()
main = do
Prelude.putStrLn "Please,enter date YYYY-MM-DD"
currentTime <- getCurrentTime
date <- Prelude.getLine
let sTime = show currentTime
let retrievedDate = toGregorian $ utctDay currentTime
let forecastDay = parseTimeM True defaultTimeLocale "%Y-%-m-%-d" date :: Maybe Day
let diifedDays = diffDays (fromJust forecastDay) retrievedDate
if date >= show retrievedDate && diifedDays > 0 && diifedDays <= 16
then print date
else print "Time Error!"
我需要将 retrievedDate (Integer,Int,Int) 转换为 Day。 任务是:从(forecastDay - retrievedDay)中减去 但我不能这样做,因为我需要将 retrievedDate 转换为 Day
错误信息: 无法匹配预期类型“日” 实际类型为'(Integer, Int, Int)'
42 | let diifedDays = diffDays (fromJust forecastDay) 检索日期
【问题讨论】:
-
@WillemVanOnsem type Day from Data.Time 我需要转换 (Integer,Int,Int) --->>>> Day
标签: haskell haskell-stack