2013-09-05 13 views
8

Próbuję nalać miesiąc, dzień i rok, oddzielnie do konsoli.Data wydruku na konsolę

Potrzebuję mieć dostęp do każdej sekcji daty indywidualnie. Mogę dostać całą rzecz używając time.now() z pakietu "time", ale utknąłem po tym.

Czy ktoś może mi pokazać, dokąd się wybieram, proszę?

+0

Dodane w taki sposób, aby wydrukować miesiąc jako liczba całkowita w przypadku jest przydatna (widocznie zapomniałem przedstawić zmienił ostatniej nocy :)). – RocketDonkey

Odpowiedz

8

Jesteś rzeczywiście bardzo blisko :) Potem powrót wartość z time.Now() jest rodzajem Time i patrząc na docs pakietów here pokaże niektóre z metod można nawiązywać połączenia (dla szybszego przeglądzie iść i patrzeć pod heretype Time). Aby uzyskać każdy z atrybutów można wymienić powyżej, można to zrobić:

package main 

import (
    "fmt" 
    "time" 
) 

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

Jeśli jesteś zainteresowany drukowania Month w postaci liczby całkowitej, można użyć Printf funkcję:

package main 

import (
    "fmt" 
    "time" 
) 

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

Day, Miesiąc i rok można wyodrębnić z typu time.Time za pomocą metody Date(). Zwróci ona wartość int dla zarówno dnia, jak i roku, i time.Month dla miesiąca. Można także wyodrębnić wartości godzin, minut i sekund za pomocą metody Clock(), która zwraca wartość int dla wszystkich wyników.

Na przykład:

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

Proszę pamiętać, że zmienna Miesiąc (mon) jest zwracany jako time.Month, a nie jako ciąg lub int. Nadal można go wydrukować przy użyciu metody fmt.Print(), ponieważ ma ona metodę String().

Playground

+0

dziękuję bardzo za pomoc. jak przekonwertować miesiąc na int? – jamcoder

+0

jak zwrócisz czas.miesiąc jako liczbę całkowitą? bawiłem się z tym przez chwilę i nigdzie się nie dostałem. – jamcoder