Haskell:如何使用Data.Time将分钟添加到当前时间?

mnt*_*123 2 time haskell clock

我想在给定的给定时间内添加/减去给定的分钟数并找出结果时间.

例如,假设给定时间是11:30 AM,添加的分钟数是100,那么结果时间是01:10 PM

如何使用Data-Time库在Haskell中完成?我尝试在Haskell网站上阅读文档,但几乎找不到任何东西.

该文档站点上没有显示示例.此外,Haskell网站上食谱不包含任何时间计算示例.

编辑:不需要当前时间,它应该适用于任何给定的时间.时间可以像"11:30"这样的字符串给出.

Sib*_*ibi 7

添加100分钟的示例演示:

?> import Data.Time
?> currentTime <- getCurrentTime
?> currentTime
2016-10-02 10:27:03.30961 UTC
?> currentZone <- getCurrentTimeZone
?> currentZone
IST
?> utcToLocalTime currentZone currentTime
2016-10-02 15:57:03.30961
?> let hundredMinutes = 100 * 60
?> addUTCTime hundredMinutes currentTime
2016-10-02 12:07:03.30961 UTC
?> let newTime = addUTCTime hundredMinutes currentTime
?> utcToLocalTime currentZone newTime
2016-10-02 17:37:03.30961
Run Code Online (Sandbox Code Playgroud)

addUTCTime功能用于添加100分钟.还可以使用等效的减法函数.

  • @Sibi再次感谢.在Haskell网站上找到的文档最令人沮丧的是它们在大多数情况下都没有显示任何一个例子:(很糟糕.与Python相比.无论如何,我会尝试.我会问一个单独的问题. (2认同)