如何在Haskell中生成本地日期时间字符串?

时间:2009-09-27 22:48:06

标签: datetime haskell

我想以字符串形式生成本地时间和日期,例如:

"2009-09-28-00-44-36.896200000000"

3 个答案:

答案 0 :(得分:10)

除非我错过了你真正想要的东西,否则你想要的是:

import Data.Time

getCurrentTime

在GHCi中运行时,您会得到:

2009-09-28 01:18:27.229165 UTC

或者,对于本地时间(如您所说,我刚刚抓到):

getZonedTime

得到:

2009-09-27 20:22:06.715505 CDT

答案 1 :(得分:6)

getCurrentTime getZonedTime 分别返回当前时间和本地时间时,这些可能不是 liszt 所期望的。 他想要一个代表当前时间的字符串,而 getCurrentTime getZonedTime 分别返回 IO UTCTime IO ZonedTime

这可以做 liszt 正在寻找的内容:

import Data.Time
currentTime = fmap show getCurrentTime
zonedTime = fmap show getZonedTime

干杯

答案 2 :(得分:1)

import System.Time

main = do ct <- getClockTime
          print ct

import Data.Time

main = do zt <- getZonedTime
          print zt