Vai al contenuto

Convertire YAML in JSON

Questo strumento converte un file YAML in JSON nel tuo browser, per un manifest Kubernetes, un file Docker Compose o una pipeline CI che uno script deve leggere come JSON. I tipi seguono lo schema core di YAML 1.2: un numero, true, false e null mantengono il loro tipo, mentre on, yes, no e una data come 2024-01-01 restano stringhe, la stessa lettura che usano GitHub Actions e la maggior parte degli strumenti attuali. Un'ancora, un alias e una chiave di merge (<<) vengono risolti, e ogni alias viene scritto per esteso come copia completa, perché JSON non ha riferimenti; un file i cui alias aggiungerebbero più di dieci milioni di caratteri, o che fa riferimento a se stesso, viene rifiutato. Un file con più documenti separati da --- dà un file JSON per documento, in ordine, e un documento vuoto, per esempio uno dopo un --- finale, viene saltato. I commenti non sono dati e vengono tralasciati. Il tuo file non viene mai caricato.

Funziona nel tuo browser

Trascina qui un file

YAML, fino a 50 MB

Come funziona

  1. 1 Scegli un file YAML.
  2. 2 Imposta l'indentazione tra 0 e 8 spazi. 2 è il valore predefinito, 0 minifica.
  3. 3 GRID16 analizza il documento e lo converte nel tuo browser.
  4. 4 Scarica il JSON.

Domande

Numeri e booleani vengono convertiti?
Sì, secondo lo schema core di YAML 1.2: un numero, true, false e null mantengono il loro tipo. Ma on, yes, no e una data come 2024-01-01 restano stringhe, perché è così che li leggono GitHub Actions e la maggior parte degli strumenti attuali.
Cosa succede ad ancore, alias e chiavi di merge?
Vengono risolti, e ogni alias viene scritto per esteso come copia completa, perché JSON non ha riferimenti. Un file i cui alias aggiungerebbero più di dieci milioni di caratteri, o un alias che fa riferimento a se stesso, viene rifiutato.
Cosa succede con un file che contiene più documenti?
Ogni documento separato da --- diventa un file JSON a sé, numerato in ordine. Un documento vuoto, per esempio uno lasciato da un --- finale, viene saltato.
E un tag personalizzato come !Ref o !reference?
L'elaborazione viene rifiutata. Un tag come !Ref di CloudFormation o !reference di GitLab porta un significato che solo il proprio strumento può risolvere.
Cosa succede con uno YAML non valido, o con .inf e .nan?
Una chiave duplicata, un'indentazione non corretta o un altro YAML non valido ferma l'elaborazione con il messaggio dell'analizzatore, incluse riga e colonna. Anche .inf, -.inf e .nan vengono rifiutati, perché JSON non può contenerli.
Il mio file viene caricato su un server?
No. La conversione avviene nel tuo browser; il file non lascia mai il tuo dispositivo.