如何获取两个日期之间的小时差异

huangapple go评论109阅读模式
英文:

How to get hours difference between two dates

问题

我第一次在Go上工作,这种情况下我有一个以UTC格式表示的字符串,我想知道如何计算我的日期和当前时间之间的小时差。这是我的当前字符串:

  1. v := "2014-05-03 20:57 UTC"
英文:

I'm working for first time on Go, in this case i have a string on UTC format, I would like to know, how can I get the difference in hours between my date and the time now.
This is my current string

  1. v := "2014-05-03 20:57 UTC"

答案1

得分: 85

使用time.Parsetime.Since函数进行时间解析和计算时间间隔:

  1. package main
  2. import (
  3. "fmt"
  4. "time"
  5. )
  6. const (
  7. // 参考 http://golang.org/pkg/time/#Parse
  8. timeFormat = "2006-01-02 15:04 MST"
  9. )
  10. func main() {
  11. v := "2014-05-03 20:57 UTC"
  12. then, err := time.Parse(timeFormat, v)
  13. if err != nil {
  14. fmt.Println(err)
  15. return
  16. }
  17. duration := time.Since(then)
  18. fmt.Println(duration.Hours())
  19. }
英文:

Use time.Parse and time.Since:

  1. package main
  2. import (
  3. "fmt"
  4. "time"
  5. )
  6. const (
  7. // See http://golang.org/pkg/time/#Parse
  8. timeFormat = "2006-01-02 15:04 MST"
  9. )
  10. func main() {
  11. v := "2014-05-03 20:57 UTC"
  12. then, err := time.Parse(timeFormat, v)
  13. if err != nil {
  14. fmt.Println(err)
  15. return
  16. }
  17. duration := time.Since(then)
  18. fmt.Println(duration.Hours())
  19. }

答案2

得分: 43

请看一下time包

  1. package main
  2. import "fmt"
  3. import "time"
  4. func main() {
  5. a, err := time.Parse("2006-01-02 15:04 MST", "2014-05-03 20:57 UTC")
  6. if err != nil {
  7. // ...
  8. return
  9. }
  10. delta := time.Now().Sub(a)
  11. fmt.Println(delta.Hours())
  12. }
英文:

Have a look at the time package.

  1. package main
  2. import "fmt"
  3. import "time"
  4. func main() {
  5. a, err := time.Parse("2006-01-02 15:04 MST", "2014-05-03 20:57 UTC")
  6. if err != nil {
  7. // ...
  8. return
  9. }
  10. delta := time.Now().Sub(a)
  11. fmt.Println(delta.Hours())
  12. }

huangapple
  • 本文由 发表于 2014年5月24日 05:55:54
  • 转载请务必保留本文链接:https://go.coder-hub.com/23838857.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定