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. სხვა ფორმატებიც მუშაობენ მსგავსად.

ამ გზით სერილიზაცია საშუალებას აძლევს სტრუქტურებს გადაიტანონ სასურველ ფორმატში შენახვის ან გადაცემის მიზნით, და შემდეგ აღადგინონ მათი თავდაპირველი სახით.