Sobes.tech
Junior — Middle

Как могат да бъдат преобразувани структурите от данни във формат, подходящ за съхранение или предаване?

sobes.tech AI

Отговор от AI

За преобразуване на структури от данни във формат, подходящ за съхранение или предаване (например, по мрежата), в Go обикновено се използва сериализация. Най-често срещаните формати са JSON, XML, Gob.

Например, сериализация на структура в 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}

    // Преобразуване на структура в JSON
    jsonData, err := json.Marshal(user)
    if err != nil {
        panic(err)
    }

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

За обратното преобразуване (десериализация) се използва json.Unmarshal. Други формати работят по подобен начин.

По този начин сериализацията позволява да се преобразуват структури във удобен за съхранение или предаване формат, а след това да бъдат възстановени обратно.