Sobes.tech
Junior — Middle

Kaip duomenų struktūras galima paversti tinkamu formatu saugojimui ar perdavimui?

sobes.tech AI

Atsakymas iš AI

Norint konvertuoti duomenų struktūras į formatą, tinkamą saugojimui ar perdavimui (pavyzdžiui, per tinklą), Go dažniausiai naudojama serializacija. Dažniausiai naudojami formatai yra JSON, XML, Gob.

Pavyzdžiui, struktūros serializavimas į JSON:

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}

    // Struktūros konvertavimas į JSON
    jsonData, err := json.Marshal(user)
    if err != nil {
        panic(err)
    }

    fmt.Println(string(jsonData)) // {"name":"Anna","age":25}
}

Atvirkštinis konvertavimas (deserializacija) atliekamas naudojant json.Unmarshal. Kiti formatai veikia panašiai.

Taip serializacija leidžia konvertuoti struktūras į patogų formatą saugojimui ar perdavimui, o vėliau jas atkurti į pradinę formą.