HOWTO · Go
Rufen Sie die Zeichenfolgendarstellung einer Struktur in Go ab
Es gibt mehrere Methoden und Bibliotheken, die verwendet werden können, um eine Struktur als Zeichenfolge darzustellen.
Auf dieser Seite
Go ermöglicht uns mehrere einfache Standardmethoden zum Serialisieren von Daten aus einer Struktur.
Verwenden Sie die String-Methode, um eine Struktur in Go in eine Zeichenfolge umzuwandeln
Das GoLang-Paket String hilft bei der Implementierung einfacher Funktionen zum Manipulieren und Bearbeiten von UTF-8-codierten Strings.
Beispielcode:
package main
import "fmt"
type myStructure struct {
bar string
}
func (f myStructure) String() string {
return fmt.Sprintf("The structure I made has the following data: %s", f.bar)
}
func main() {
fmt.Println(myStructure{"Hello, World! GoLang is fun!"})
}
Ausgang:
The structure I made has the following data: Hello, World! GoLang is fun!
Im obigen Code haben wir eine String()-Funktion an eine benannte Struktur namens myStructure angehängt, die es uns ermöglicht, eine Struktur in einen String umzuwandeln.
Verwenden Sie die json.Marshal-Methode, um eine Struktur in Go in JSON zu konvertieren
Das GoLang-Paket encoding/json enthält Dienstprogramme, die zum Konvertieren in und aus JSON verwendet werden können. Die Methode json.Marshal kann eine Struktur in JSON konvertieren.
Beispielcode:
package main
import (
"encoding/json"
"fmt"
)
func main() {
type MyStructure struct {
Message string `json:"From Structure"`
}
val := &MyStructure{
Message: "Hello, World!",
}
// convert struct to json string
jsonBytes, err := json.Marshal(val)
fmt.Println(string(jsonBytes), err)
}
Ausgang:
{"From Structure":"Hello, World!"} <nil>
Beachten Sie, dass bei Verwendung der obigen Methode nur exportierte Felder der definierten Struktur für die externe Bibliothek verfügbar sind. Daher werden nur die Exportfelder unserer Struktur in den konvertierten JSON-String kopiert.