web-dev-qa-db-ja.com

2つの日付の時間差を取得する方法

私はGoで初めて働いていますが、この場合はUTC形式の文字列がありますが、現在の日付と時刻の時間差をどのように取得できますか?これは私の現在の文字列です

v := "2014-05-03 20:57 UTC"
39

time.Parse および time.Since を使用します。

package main

import (
    "fmt"
    "time"
)

const (
    // See http://golang.org/pkg/time/#Parse
    timeFormat = "2006-01-02 15:04 MST"
)

func main() {
    v := "2014-05-03 20:57 UTC"
    then, err := time.Parse(timeFormat, v)
    if err != nil {
        fmt.Println(err)
        return
    }
    duration := time.Since(then)
    fmt.Println(duration.Hours())
}
76
user634175

time package をご覧ください。

package main

import "fmt"
import "time"

func main() {
    a, err := time.Parse("2006-01-02 15:04 MST", "2014-05-03 20:57 UTC")
    if err != nil {
        // ...
        return
    }

    delta := time.Now().Sub(a)
    fmt.Println(delta.Hours())
}
36
jimt