为什么不使用
我正在尝试让Haskell在第一个工作日输出/打印几个月。我想出了以下代码:
import Data.Time.Calendar
import Data.Time.Calendar.WeekDate
import Data.Char
day=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"]
year=2017
month=5
weekday = day!!(digitToInt(last(showWeekDate (fromGregorian year month 01)))
当我运行代码时,我该如何让Haskell打印工作日?我认为最后一行代码也存在一些问题。
为什么不使用 Data.Time.Format
?
import Data.Time.Format
weekDay = formatTime defaultTimeLocale "%a"
应该解决这个问题。我在公共汽车上,因此未经测试。
编辑
测试了✔
如果这是关于打印到Stdout的问题,则必须在GHCI
中调用此功能ghci> let d = fromGregorian 2017 03 08
ghci> let weekday = formatTime defaultTimeLocale "%a"
ghci> weekday d
"Wed"
或具有主函数
import Data.Time
import Data.Time.Format
main :: IO ()
main = print $ weekday d
d = fromGregorian 2017 03 08
weekday = formatTime defaultTimeLocale "%a"
然后您可以runhaskell
或编译并运行并获得
Wed