【问题标题】:Go printing date to console将日期打印到控制台
【发布时间】:2019-07-17 14:00:05
【问题描述】:

我正在尝试将月、日和年分别打印到控制台。

我需要能够单独访问日期的每个部分。我可以使用“时间”包中的time.now() 来获取全部内容,但在那之后我被卡住了。

谁能告诉我哪里出错了?

【问题讨论】:

  • 添加了将月份打印为整数的方式,以防万一有用(显然我昨晚忘记提交编辑了:))。

标签: go


【解决方案1】:

您实际上非常接近 :) 然后来自 time.Now() 的返回值是 Time 类型,查看包文档 here 将向您展示一些您可以调用的方法(为了更快地了解,转到here 并查看type Time)。要获取您上面提到的每个属性,您可以这样做:

package main

import (
    "fmt"
    "time"
)

func main() {
    t := time.Now()
    fmt.Println(t.Month())
    fmt.Println(t.Day())
    fmt.Println(t.Year())
}

如果您有兴趣将Month 打印为整数,可以使用Printf 函数:

package main

import (
    "fmt"
    "time"
)

func main() {
    t := time.Now()
    fmt.Printf("%d\n", t.Month())
}

【讨论】:

    【解决方案2】:

    可以使用Date() 方法从time.Time 类型中提取日、月和年。它将返回日期和年份的整数,以及月份的 time.Month。您还可以使用 Clock() 方法提取 Hour、Minute 和 Second 值,该方法为所有结果返回整数。

    例如:

    package main
    
    import (
        "fmt"
        "time"
    )
    
    func main() {
        t := time.Now()
        y, mon, d := t.Date()
        h, m, s := t.Clock()
        fmt.Println("Year: ", y)
        fmt.Println("Month: ", mon)
        fmt.Println("Day: ", d)
        fmt.Println("Hour: ", h)
        fmt.Println("Minute: ", m)
        fmt.Println("Second: ", s)
    }
    

    请记住,Month 变量 (mon) 作为 time.Month 返回,而不是作为字符串或 int。您仍然可以使用fmt.Print() 打印它,因为它具有String() 方法。

    Playground

    【讨论】:

    • 非常感谢两位的帮助。如何将月份转换为 int?
    • 如何将 time.month 作为整数返回?我已经玩了一段时间了,但没有得到任何地方。
    【解决方案3】:

    您可以只解析字符串以获取年、月和日。

    package main
    
    import (
        "fmt"
        "strings"
    )
    
    func main() {
        currTime := time.Now()
        date := strings.Split(currTime.String(), " ")[0]
        splits := strings.Split(date, "-")
        year := splits[0]
        month := splits[1]
        day := splits[2]
    
        fmt.Printf("%s-%s-%s\n", year, month, day)
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-29
      • 1970-01-01
      • 2015-10-28
      • 1970-01-01
      • 1970-01-01
      • 2011-12-03
      相关资源
      最近更新 更多