Go 中的日期解析

发布于 2024-11-18 18:09:54 字数 393 浏览 1 评论 0原文

我正在尝试解析由 tar 生成的时间戳,例如“2011-01-19 22:15”,但无法计算出 time.Parse 的时髦 API。

以下产生“解析时间“2011-01-19 22:15”:月份超出范围”

package main
import (
    "fmt"
    "time"
    )

func main () {
    var time , error = time.Parse("2011-01-19 22:15","2011-01-19 22:15")
    if error != nil {
        fmt.Println(error.String())
        return
        }
    fmt.Println(time)
    }

I'm trying to parse a timestamp as produced by tar such as '2011-01-19 22:15' but can't work out the funky API of time.Parse.

The following produces 'parsing time "2011-01-19 22:15": month out of range'

package main
import (
    "fmt"
    "time"
    )

func main () {
    var time , error = time.Parse("2011-01-19 22:15","2011-01-19 22:15")
    if error != nil {
        fmt.Println(error.String())
        return
        }
    fmt.Println(time)
    }

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

李白 2024-11-25 18:09:54

请按照 Go time 包 文档中的说明进行操作。

使用的标准时间
布局中是:

<块引用>

2006 年 1 月 2 日星期一 15:04:05 MST(MST 为
GMT-0700)

这是 Unix 时间1136243045。 (思考
其为 01/02 03:04:05PM '06 -0700。)
要定义您自己的格式,请写下
标准时间是什么样的
按照您的方式格式化。

例如,

package main

import (
    "fmt"
    "time"
)

func main() {
    t, err := time.Parse("2006-01-02 15:04", "2011-01-19 22:15")
    if err != nil {
        fmt.Println(err)
        return
    }
    fmt.Println(time.SecondsToUTC(t.Seconds()))
}

Output: Wed Jan 19 22:15:00 UTC 2011

Follow the instructions in the Go time package documentation.

The standard time used
in the layouts is:

Mon Jan 2 15:04:05 MST 2006 (MST is
GMT-0700)

which is Unix time 1136243045. (Think
of it as 01/02 03:04:05PM '06 -0700.)
To define your own format, write down
what the standard time would look like
formatted your way.

For example,

package main

import (
    "fmt"
    "time"
)

func main() {
    t, err := time.Parse("2006-01-02 15:04", "2011-01-19 22:15")
    if err != nil {
        fmt.Println(err)
        return
    }
    fmt.Println(time.SecondsToUTC(t.Seconds()))
}

Output: Wed Jan 19 22:15:00 UTC 2011
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文