time.Time.MarshalText() Funktion in Golang mit Beispielen
In der Go-Sprache bieten Zeitpakete Funktionen zum Bestimmen und Anzeigen von Zeiten. Die MarshalText()- Funktion in der Go-Sprache wird verwendet, um die encoding.TextMarshaler -Schnittstelle zu implementieren. Und die Zeit hier ist im RFC 3339-Format formatiert, zusammen mit der angehängten Genauigkeit von weniger als einer Sekunde, falls verfügbar. Außerdem ist diese Funktion unter dem Zeitpaket definiert. Hier müssen Sie das Paket „Zeit“ importieren, um diese Funktionen nutzen zu können.
Syntax:
func (t Time) MarshalText() ([]byte, error)
Dabei ist „t“ die angegebene Zeit und als Ausgabe in dieser Methode werden zwei Werte vom Typ „byte“ und „error“ zurückgegeben.
Rückgabewert: Es gibt ein Byte-Slice zurück, das die Codierung des Empfängers in UTF-8-codierten Text darstellt, und es gibt auch einen aufgetretenen Fehler zurück, aber wenn es keine Fehler gibt, wird „nil“ zurückgegeben.
Beispiel 1:
// Golang program to illustrate the usage of // Time.MarshalText() function // Including main package package main // Importing fmt and time import "fmt" import "time" // Calling main func main() { // Defining t for MarshalText method t := time.Date(2001, 3, 6, 11, 45, 12, 03, time.UTC) // Calling MarshalText() method encoding, error := t.MarshalText() // Prints receiver's encoding fmt.Printf("Receiver's encoding: %v\n", encoding) // Prints error fmt.Printf("Error occurred: %v\n", error) }
Ausgabe:
Codierung des Empfängers: [50 48 48 49 45 48 51 45 48 54 84 49 49 58 52 53 58 49 50 46 48 48 48 48 48 48 48 48 51 90]
Fehler aufgetreten: <nil>
Beispiel 2:
// Golang program to illustrate the usage of // Time.MarshalText() function // Including main package package main // Importing fmt and time import "fmt" import "time" // Calling main func main() { // Defining t for MarshalText method t := time.Date(2022, 67, 45, 89, 78, 90, 4353, time.UTC) // Calling MarshalText() method encoding, error := t.MarshalText() // Prints receiver's encoding fmt.Printf("Receiver's encoding: %v\n", encoding) // Prints error fmt.Printf("Error occurred: %v\n", error) }
Ausgabe:
Codierung des Empfängers: [50 48 50 55 45 48 56 45 49 55 84 49 56 58 49 57 58 51 48 46 48 48 48 48 48 52 51 53 51 90]
Fehler aufgetreten: <nil>
Hier hat das im obigen Code angegebene „t“ Werte, die außerhalb des üblichen Bereichs liegen, aber bei der Konvertierung normalisiert werden.