如何格式化持续时间

没有帽子的用户

如何将time.Duration格式化/字符串化为ISO8601例如P3Y6M4DT12H30M5S

你的世界

如果您只有一个time.Duration上下文并且没有上下文,那么您就不走运了:Duration仅计算纳秒,一个月中的纳秒数会随着天数的变化而变化。夏时制转换(在文档中提到),leap日和leap秒也有类似的较小的不规律性(Go的time软件包甚至不考虑leap秒)。

给定两个time.Time值,看起来github.com/rickb777/date/period就可以完成所需的工作,包括格式化-如下所示P3Y1M21DT17H18M58S

package main

import (
    "fmt"
    "github.com/rickb777/date/period"
    "log"
    "time"
)

func main() {
    t1, err := time.Parse(time.RFC3339, "2012-11-03T13:41:02Z")
    if err != nil {
        log.Fatal(err)
    }
    t2, err := time.Parse(time.RFC3339, "2015-12-25T07:00:00Z")
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(period.Between(t1, t2))
}

我在另一个问题用户icza中找到了与该链接的链接以及其他信息,该问题与打印人类可读的“ X几个月前”字符串的紧密相关的问题有关。

在下面,您同时在上调用Year()Month()Time,并获得它们之间的差异(说明了不同的月份长度)。icza为此回答了另一个问题写出了代码然后,格式化和存储这些差异是相对容易的部分,并且也可以通过ChannelMeter / iso8601duration的代码Duration(改编自BrianHicks / finch)来完成。

我不知道总的标准合规性还可能是什么,但这使您非常接近。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

格式化Moment.js持续时间

来自分类Dev

如何使用Moment.js完全格式化持续时间?

来自分类Dev

如何使用Moment.js完全格式化持续时间?

来自分类Dev

如何在Python(timedelta)中格式化持续时间?

来自分类Dev

如何格式化Momentjs持续时间以使其易于阅读?

来自分类Dev

如何使用GNU工具而不是结果日期来计算和格式化日期持续时间?

来自分类Dev

如何在Lua中将ISO 8601持续时间转换为格式化的字符串?

来自分类Dev

在Excel中格式化时间(持续时间)

来自分类Dev

在Java 8 / jsr310中格式化持续时间

来自分类Dev

格式化DATEDIFF输出后的持续时间错误(附加日)

来自分类Dev

格式化润滑持续时间列以进行轴标记

来自分类Dev

来自 JodaTime 持续时间的格式化字符串

来自分类Dev

条件格式化应用于单元格计算持续时间的不稳定行为

来自分类Dev

AngularJS:如何用格式打印持续时间?

来自分类Dev

AngularJS:如何用格式打印持续时间?

来自分类Dev

如何从JAVA中的持续时间获取日期格式?

来自分类Dev

时间跨度或持续时间格式

来自分类Dev

如何在angularjs中人性化持续时间?

来自分类Dev

无法将字符串格式化为持续时间

来自分类Dev

使用NSDateIntervalFormatter将持续时间格式化为ISO8601周期

来自分类Dev

如何使用 Moment.js 持续时间格式从持续时间中删除标点符号

来自分类Dev

持续时间的条件格式公式

来自分类Dev

如何正确格式化Java时间

来自分类Dev

如何格式化日期以删除时间?

来自分类Dev

如何正确格式化Java时间

来自分类Dev

如何设置音频持续时间

来自分类Dev

如何显示歌曲持续时间

来自分类Dev

如何计算表格中的持续时间

来自分类Dev

如何设置avconv的持续时间?

Related 相关文章

  1. 1

    格式化Moment.js持续时间

  2. 2

    如何使用Moment.js完全格式化持续时间?

  3. 3

    如何使用Moment.js完全格式化持续时间?

  4. 4

    如何在Python(timedelta)中格式化持续时间?

  5. 5

    如何格式化Momentjs持续时间以使其易于阅读?

  6. 6

    如何使用GNU工具而不是结果日期来计算和格式化日期持续时间?

  7. 7

    如何在Lua中将ISO 8601持续时间转换为格式化的字符串?

  8. 8

    在Excel中格式化时间(持续时间)

  9. 9

    在Java 8 / jsr310中格式化持续时间

  10. 10

    格式化DATEDIFF输出后的持续时间错误(附加日)

  11. 11

    格式化润滑持续时间列以进行轴标记

  12. 12

    来自 JodaTime 持续时间的格式化字符串

  13. 13

    条件格式化应用于单元格计算持续时间的不稳定行为

  14. 14

    AngularJS:如何用格式打印持续时间?

  15. 15

    AngularJS:如何用格式打印持续时间?

  16. 16

    如何从JAVA中的持续时间获取日期格式?

  17. 17

    时间跨度或持续时间格式

  18. 18

    如何在angularjs中人性化持续时间?

  19. 19

    无法将字符串格式化为持续时间

  20. 20

    使用NSDateIntervalFormatter将持续时间格式化为ISO8601周期

  21. 21

    如何使用 Moment.js 持续时间格式从持续时间中删除标点符号

  22. 22

    持续时间的条件格式公式

  23. 23

    如何正确格式化Java时间

  24. 24

    如何格式化日期以删除时间?

  25. 25

    如何正确格式化Java时间

  26. 26

    如何设置音频持续时间

  27. 27

    如何显示歌曲持续时间

  28. 28

    如何计算表格中的持续时间

  29. 29

    如何设置avconv的持续时间?

热门标签

归档