2013-09-05 3 views
8

Я пытаюсь пинтать месяц, день и год, отдельно на консоль.Перейти даты печати на консоль

Мне нужно иметь доступ к каждой части даты индивидуально. Я могу получить все это, используя time.now() из пакета «время», но после этого я застрял.

Может ли кто-нибудь показать мне, где я ошибаюсь, пожалуйста?

+0

Добавлено в пути, чтобы напечатать месяц как целое число в случае полезно (по-видимому, я забыл представить правку прошлой ночью :)). – RocketDonkey

ответ

8

Вы на самом деле довольно близко :) Тогда вернуть значение из 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()) 
} 
1

день, Месяц и год могут быть извлечены из типа time.Time с помощью метода Date(). Он вернет ints для дня и года и time.Month за месяц. Вы также можете извлечь значения Hour, Minute и Second с помощью метода Clock(), который возвращает ints для всех результатов.

Например:

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) 
} 

Пожалуйста, помните, что переменная месяц (mon) возвращается как time.Month, а не в виде строки, или междунар. Вы можете распечатать его с помощью fmt.Print(), так как он имеет метод String().

Playground

+0

Спасибо вам большое за помощь. как вы конвертируете месяц в int? – jamcoder

+0

как вы возвращаете time.month как целое число? я некоторое время играю с этим и никуда не денусь. – jamcoder

Смежные вопросы