代码之家  ›  专栏  ›  技术社区  ›  rjpj1998

将double转换为UTCTime

  •  0
  • rjpj1998  · 技术社区  · 7 年前

    标题就是一切。

    假设我有一个双人床:

    let d = 11241241.10124012 :: Double
    

    如何获取的实例 UTCTime 对应于d,d,如unix秒?

    1 回复  |  直到 7 年前
        1
  •  1
  •   duplode    7 年前

    您需要将double转换为分数,以便将其理解为 NominalDiffTime 值(它是 Fractional )。一旦被理解为 名义差异时间 值,然后 posixSecondsToUTCTime 将处理转换( POSIXTime 是的类型同义词 名义差异时间 )。

    import Data.Time.Clock
    import Data.Time.Clock.POSIX(posixSecondsToUTCTime)
    
    doubleToUTCTime d = posixSecondsToUTCTime $ realToFrac d