将NominalDiffTime打印为小时,分钟和秒

Mat*_*hid 7 formatting time haskell

我很惊讶以前没有人问过这个问题,但是......我如何NominalDiffTime在几小时,几分钟和几秒钟内轻松打印出来?(可能还有几天,如果碰巧那么久......)

由于未知原因,Show实例打印总秒数,这显然是无用的.(多长时间是13,055.22秒?是几分钟?一天?半小时?我不知道!)

这是FormatTime班级,但不适用于NominalDiffTime.

看来你可以使用这个floor方法将总秒数作为实际数字,但那你用它做什么?

据我所知,DiffTime也没有帮助.

必须是三立打印持续时间的方式...

Dan*_*ner 4

您可以通过查看 来打印 a DiffTime— 它实际上代表持续时间,并且可能是您应该使用的类型 — TimeOfDay。正确地掌握它DiffTime实际上有点棘手;你需要: