100 % locale — i tuoi dati non lasciano mai il tuo browser

JSON in YAML — pronto per la tua configurazione

Converti JSON in YAML. L’indentazione la scegli tu, i valori ambigui vanno tra virgolette e il risultato si incolla in un Compose o nella CI.

Istantaneo Privato Zero cookie
Indentazione

Input JSON

Output YAML

Che cosa fa questo strumento

YAML è un soprainsieme di JSON, quindi la corrispondenza è diretta: gli oggetti diventano mappe, gli array sequenze, e ogni scalare conserva il suo tipo.

{ "nome": "Ada", "tags": ["mate", "motore"], "attivo": true }
nome: Ada
tags:
  - mate
  - motore
attivo: true

Tra virgolette dove il senso cambierebbe

{ "paese": "NO", "bandiera": "yes", "alle": "12:30" }
paese: "NO"
bandiera: "yes"
alle: "12:30"

Scritti nudi, quei tre sarebbero letti come falso, vero e 750 da qualunque parser YAML 1.1 — quello che implementa PyYAML, e con PyYAML legge YAML una parte enorme del mondo. Si chiama problema norvegese, dal codice paese che continua a diventare un booleano.

Qui il valore arriva da JSON come stringa: nessuna ambiguità su che cosa sia. Metterlo tra virgolette è l’unica scrittura che lo mantiene stringa per ogni lettore. I booleani veri restano nudi: true è true.

Gli identificatori lunghi conservano le cifre

{ "id": 12345678901234567890 }

esce con tutte e venti le cifre. La maggior parte dei convertitori analizza prima il JSON verso un valore JavaScript, il che fa passare ogni numero per un valore in virgola mobile a doppia precisione e arrotonda oltre una quindicina di cifre, in silenzio. Qui il numero è letto come il testo che è.

Le stringhe su più righe diventano scalari di blocco

Una stringa con ritorni a capo si scrive nella forma a blocco, leggibile, anziché con \n:

descrizione: |-
  prima riga
  seconda riga

Che cosa non può passare

Commenti e ancore. JSON non ha né gli uni né le altre: non c’è nulla da portare. Un convertitore che si offrisse di aggiungerli inventerebbe la documentazione del tuo file, e quello è lavoro di una persona.

Privato per progettazione

Tutto viene eseguito localmente nel browser con JavaScript. I tuoi dati non vengono mai caricati, quindi lo strumento è sicuro per contenuti sensibili e funziona anche offline.

Domande frequenti

Perché il mio codice paese NO è tra virgolette?
Perché `NO` nudo è la stringa `NO` per un lettore YAML 1.2 e il booleano **falso** per uno 1.1 — e PyYAML, che usa una parte enorme del mondo, implementa 1.1. Qui il valore arriva come stringa JSON: sappiamo che cos’è, e le virgolette sono l’unica scrittura che lo mantiene tale.
Il mio identificatore di 20 cifre sopravvive?
Sì. Il numero è letto come il testo che è, quindi `12345678901234567890` esce con tutte e venti le cifre. Non è scontato: `JSON.parse` lo avrebbe prima arrotondato a `12345678901234567000`, ed è così che la maggior parte dei convertitori lo perde.
Posso ottenere commenti o ancore in uscita?
No, e nulla potrebbe. JSON non ha né gli uni né le altre: non c’è nulla da trasportare, e un convertitore non può inventare un commento che nessuno ha scritto. Se ti serve uno YAML documentato, scrivi i commenti dopo la conversione e tieni lo YAML come sorgente da lì in poi.

Convertitori correlati