我知道时间包以及如何根据日期/时间表示解析模板。我想知道的是如何在 stdLongMonth 前一个月解析 time.Now()。
IE
time.Now() // == April, 2013
// Output: March, 2013
换句话说,是否可以使用 sub.stdLongMonth() 方法解析 time.now() ?任何人都可以足够友善并展示一些例子吗?
例如,
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
使用 time.AddDate() 因为这也将使您摆脱时区的考虑:
package main
import (
"fmt"
"time"
)
func main() {
time := time.Now().AddDate(0,-1,0)
fmt.Println(time.Format("January, 2006"))
}