Leggere e scrivere file YAML in Go
In questo articolo vediamo come leggere e scrivere file YAML in Go.
Per farlo useremo una libreria apposita, yaml.v3.
Prima di tutto installiamola:
go get gopkg.in/yaml.v3
Qui sotto un esempio di codice:
package main
import (
"fmt"
"log"
"os"
"gopkg.in/yaml.v3"
)
type Libro struct {
Titolo string
Autore string
Prezzo float32
Categorie []string
}
func main() {
l := Libro{
Titolo: "IT",
Autore: "Stephen King",
Prezzo: 25.35,
Categorie: []string{"horror", "fantasy"},
}
out, err := yaml.Marshal(l)
if err != nil {
log.Fatal(err)
}
os.WriteFile("test.yaml", []byte(out), 0777)
f, err := os.ReadFile("test.yaml")
if err != nil {
log.Fatal(err)
}
var libro Libro
if err := yaml.Unmarshal(f, &libro); err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", libro)
}
Prima creiamo un file.
Poi lo leggiamo e stampiamo il risultato.
Enjoy!
go yaml yaml.v3
Commentami!