2

我知道时间包以及如何根据日期/时间表示解析模板。我想知道的是如何在 stdLongMonth 前一个月解析 time.Now()。

IE

time.Now() // == April, 2013
// Output: March, 2013

换句话说,是否可以使用 sub.stdLongMonth() 方法解析 time.now() ?任何人都可以足够友善并展示一些例子吗?

4

2 回答 2

4

例如,

package main

import (
    "fmt"
    "time"
)

func main() {
    y, m, _ := time.Now().Date()
    t := time.Date(y, m, 1, 0, 0, 0, 0, time.UTC)
    fmt.Println(t.Format("January, 2006"))
    t = time.Date(y, m-1, 1, 0, 0, 0, 0, time.UTC)
    fmt.Println(t.Format("January, 2006"))
}

输出:

April, 2013
March, 2013
于 2013-04-16T21:27:13.457 回答
-1

使用 time.AddDate() 因为这也将使您摆脱时区的考虑:

package main

import (
    "fmt"
    "time"
)

func main() {
    time := time.Now().AddDate(0,-1,0)
    fmt.Println(time.Format("January, 2006"))

}
于 2013-04-17T02:54:31.857 回答