Junior — Middle
Kuidas saab andmestruktuureid muuta sobivaks formaadiks salvestamiseks või edastamiseks?
sobes.tech AI
Vastus AI-lt
Andmete struktuureid sobivasse vormingusse, mis sobib salvestamiseks või edastamiseks (näiteks võrgus), kasutatakse Go-s tavaliselt serialiseerimist. Kõige levinumad formaadid on JSON, XML, Gob.
Näiteks struktuuri serialiseerimine JSON-i:
package main
import (
"encoding/json"
"fmt"
)
type User struct {
Name string `json:"name"`
Age int `json:"age"`
}
func main() {
user := User{Name: "Anna", Age: 25}
// Struktuuri konverteerimine JSON-iks
jsonData, err := json.Marshal(user)
if err != nil {
panic(err)
}
fmt.Println(string(jsonData)) // {"name":"Anna","age":25}
}
Vastupidine konverteerimine (deserialiseerimine) toimub kasutades json.Unmarshal. Teised formaadid töötavad sarnaselt.
Sellisel viisil võimaldab serialiseerimine muuta struktuurid mugavasse vormingusse salvestamiseks või edastamiseks ning seejärel taastada need algsesse vormi.