Format czasu Golang

Format czasu Golang
Go pozwala na sformatowanie i analizowanie czasu poza pudełkiem dostarczonym przez pakiet czasu. Możesz określić swój format docelowy za pomocą układów opartych na wzorcach za pomocą metody format (). W przeciwieństwie do typowych opcji formatowania daty i godziny, takich jak Yyyy-MM-DD, GO używa określonego parametru układu.

Korzystając z tego krótkiego przewodnika, zrozumiesz, jak sformatować czas w Golang za pomocą różnych formatów i wzorów.

Podstawy

Używamy metody format () i przekazujemy obiekt czasowy jako parametr do sformatowania czasu w Go. Składnia funkcji jest jak pokazana:

Format FUNC (T Time) (ciąg String)

Funkcja zwróci wartość czasu sformatowaną do określonego układu. Możesz zdefiniować niestandardowe formaty lub użyć wcześniej zdefiniowanych. Obejmują one:

Układy używają czasu odniesienia 2 stycznia 15:04:05 MST 2006, aby wskazać wzór, pod którym można sformatować obiekt czasowy.

Przykład 1 - Układy niestandardowe

Spójrzmy na kilka przykładów czasu formatowania przy użyciu różnych niestandardowych układów.

func yyy_mm_dd ()
current_time: = czas.Teraz()
fmt.Println (current_time.Format („2006-01-02”))

W powyższym przykładzie pobieramy bieżący czas za pomocą czasu.Teraz () metoda. Następnie sformatujemy bieżący czas do Yyyy-MM-DD przy użyciu daty odniesienia.

Możemy teraz wykonać powyższy kod, jak pokazano:

$ Go Run Time_format.Iść
2022-01-17

Jeśli chcemy uwzględnić datę i godzinę w systemie 24-godzinnym, możemy ustawić format, jak pokazano na fragmencie poniżej:

current_time: = czas.Teraz()
fmt.Println (current_time.Format („2006-01-02 15:04:05”)))

Powyższy kod powinien zwrócić dane wyjściowe jako:

2022-01-17 14:46:46

Aby wyświetlić czas w zegarku 12 godzin, możemy zrobić:

current_time: = czas.Teraz()
fmt.Println (current_time.Format („2006-01-02 3: 4: 5 pm”))

Kod zwraca dane wyjściowe jako:

2022-01-17 2:47:37 PM

Przykład 2 - wstępnie zdefiniowane układy

Możesz także sformatować zgodnie z wcześniej zdefiniowanym układem, przekazując układ jako ciąg do metody format ().

Rozważ następujące przykłady:

Func format_pre_defined ()
current_time: = czas.Teraz()
fmt.Println („ansic ->”, current_time.Format (czas.Ansic))
fmt.Println („Unixdate ->”, current_time.Format (czas.Unixdate))
fmt.Println („Kitchen ->”, Current_Time.Format (czas.Kuchnia))
fmt.Println („rfc3339 ->”, current_time.Format (czas.RFC3339))
fmt.Println („Rubidate ->”, current_time.Format (czas.Rubydate))
fmt.Println („rfc822 ->”, current_time.Format (czas.RFC822))
fmt.Println („rfc1123z ->”, current_time.Format (czas.RFC1123Z))

Po uruchomieniu powyższego kodu powinien zwrócić bieżący czas sformatowany do różnych predefiniowanych formatów. Przykładem jest to, jak pokazano:

Ansic -> pon. 17 stycznia 14:56:03 2022
UNIXDATE -> MON 17 stycznia 14:56:03 Eat 2022
Kuchnia -> 14:56
RFC3339-> 2022-01-17T14: 56: 03+03: 00
Rubydate -> pon. 17 stycznia 14:56:03 +0300 2022
RFC822 -> 17 stycznia 22 14:56 Eat
RFC1123Z -> pon, 17 stycznia 2022 14:56:03 +0300

Zamknięcie

Ten przewodnik obejmuje podstawy formatowania czasu w języku programowania Go za pomocą metody format () z pakietu czasowego.