Formato tempo di golang

Formato tempo di golang
Go ti consente di formattare e analizzare il tempo fuori dalla scatola fornita dal pacchetto Time. È possibile specificare il formato target utilizzando layout basato su pattern usando il metodo formato (). A differenza delle opzioni tipiche di formattazione della data e del tempo come Yyyy-MM-DD, GO utilizza un parametro di layout specifico.

Usando questa breve guida, capirai come formattare il tempo in Golang usando vari formati e motivi.

Le basi

Usiamo il metodo formato () e passiamo un oggetto temporale come parametro per formattare il tempo in Go. La sintassi della funzione è come mostrata:

FORCO FUNC (T Time) Formato (Stringa di layout) Stringa

La funzione restituirà il valore di tempo formattato al layout specificato. È possibile definire formati personalizzati o utilizzare quelli predefiniti. Questi includono:

I layout usano il tempo di riferimento il 2 gennaio 15:04:05 MST 2006 per indicare il modello in base al quale formattare l'oggetto temporale.

Esempio 1 - Layout personalizzato

Vediamo alcuni esempi di tempo di formattazione usando vari layout personalizzati.

func yyyy_mm_dd ()
Current_time: = Time.Ora()
fmt.Println (current_time.Formato ("2006-01-02"))

Nell'esempio sopra, prendiamo l'ora corrente usando il tempo.Ora () metodo. Successivamente, formatiamo l'ora corrente a YYYY-MM-DD usando la data di riferimento.

Ora possiamo eseguire il codice sopra come mostrato:

$ go run time_format.andare
2022-01-17

Se vogliamo includere la data e l'ora nel sistema a 24 ore, possiamo impostare il formato come mostrato nello snippet di seguito:

Current_time: = Time.Ora()
fmt.Println (current_time.Formato ("2006-01-02 15:04:05")

Il codice sopra dovrebbe restituire l'output come:

2022-01-17 14:46:46

Per visualizzare l'ora nell'orologio da 12 ore, possiamo fare:

Current_time: = Time.Ora()
fmt.Println (current_time.Formato ("2006-01-02 3: 4: 5 pm")

Il codice restituisce l'output come:

2022-01-17 14:47:37 PM

Esempio 2 - Layout predefinito

Puoi anche formattare in base a un layout predefinito passando il layout come stringa al metodo Format ().

Considera i seguenti esempi:

func format_pre_defined ()
Current_time: = Time.Ora()
fmt.Println ("ansic ->", current_time.Formato (tempo.Ansic))
fmt.Println ("unixdate ->", current_time.Formato (tempo.Unixdate))
fmt.Println ("cucina ->", current_time.Formato (tempo.Cucina))
fmt.Println ("rfc3339 ->", current_time.Formato (tempo.RFC3339))
fmt.Println ("rubydate ->", current_time.Formato (tempo.Rubydate))
fmt.Println ("rfc822 ->", current_time.Formato (tempo.RFC822))
fmt.Println ("rfc1123z ->", current_time.Formato (tempo.RFC1123Z))

Una volta eseguito il codice sopra, dovrebbe restituire il tempo corrente formattato in vari formati predefiniti. Un output di esempio è come mostrato:

ANSIC -> MON 17 gennaio 14:56:03 2022
UNIXDATE -> MON 17 gennaio 14:56:03 EAT 2022
Cucina -> 2:56 pm
RFC3339-> 2022-01-17T14: 56: 03+03: 00
Rubydate -> Mon 17 gennaio 14:56:03 +0300 2022
RFC822 -> 17 gennaio 22 14:56 EAT
RFC1123Z -> lun, 17 gennaio 2022 14:56:03 +0300

Chiusura

Questa guida copre le basi della formattazione del tempo nel linguaggio di programmazione GO usando il metodo formato () dal pacchetto temporale.