我一直在寻找一种简单的方法来尝试将当前时间(可能是自午夜以来的秒数,或小时、分钟、秒)转换为 int。谁能指出我正确的方向?我查看了图书馆并没有成功。
问问题
2834 次
2 回答
6
要获得自午夜以来的时间Int
非常简单:
import Data.Time.Clock
main = do
currTime <- getCurrentTime
let timed = floor $ utctDayTime currTime :: Int
print timed
对于踢腿和咯咯笑,这是它的快速功能
integralTime :: (Integral a) => IO a
integralTime = getCurrentTime >>= return.floor.utctDayTime
这是有效的,因为TimeDiff
(它是一个RealFrac
实例)可以被floor
编辑为一个积分。
于 2013-03-24T17:19:05.467 回答
0
在搜索“haskell datetime”时,我在 Google 上的第一次点击与 Tim 给出的链接相同。您必须getCurrentTime :: IO DateTime
在此处获取当前时间,然后diffUTCTime :: UTCTime -> UTCTime -> NominalDiffTime
计算差异(以秒为单位)。
http://hackage.haskell.org/packages/archive/datetime/0.1/doc/html/Data-DateTime.html http://hackage.haskell.org/packages/archive/time/1.1.4/doc/html /Data-Time-Clock.html#t:UTCTime
于 2013-03-24T17:34:29.910 回答