typestar

Codificación JSON en Go

Las etiquetas de struct asignan campos de Go a claves JSON.

type Repo struct {
    Name  string `json:"name"`
    Stars int    `json:"stargazers_count"`
    Fork  bool   `json:"fork,omitempty"`
}

func encode(repos []Repo) ([]byte, error) {
    return json.MarshalIndent(repos, "", "  ")
}

func decode(data []byte) ([]Repo, error) {
    var repos []Repo
    err := json.Unmarshal(data, &repos)
    return repos, err
}

Cómo funciona

  1. Las etiquetas entre backticks renombran campos para JSON.
  2. omitempty omite los valores cero de la salida.
  3. Marshal y Unmarshal convierten en ambos sentidos.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
15
Caracteres a escribir
330
Tokens
79
Ritmo de tres estrellas
100 tpm

Al ritmo de tres estrellas de 100 tokens por minuto, este intento toma unos 47 segundos.

Escribe este fragmento

Paso 1 de 3 en Codificación; paso 1 de 26 en Biblioteca estándar y estructura del proyecto.

Siguiente →