YAML
Convertitore YAML
Converti tra YAML e JSON in entrambe le direzioni.
Informazioni su YAML e JSON
YAML e JSON descrivono le stesse strutture — mappe, elenchi, stringhe, numeri, booleani — con una punteggiatura diversa. YAML si basa sull'indentazione e si scrive a mano; JSON è esplicito ed è ciò che la maggior parte delle API e delle librerie legge davvero. La conversione è quasi del tutto meccanica, con l'avvertenza che YAML ha funzionalità, come i commenti e le ancore, che JSON non può proprio esprimere.
Le regole di tipo di YAML sono più ristrette di quanto sembrino. Solo true/false (e varianti come True o TRUE) vengono analizzati come booleani — yes, no, on e off restano semplici stringhe, a differenza di alcuni parser YAML più vecchi che li trattavano anch'essi come booleani, una discrepanza nota online come "problema della Norvegia" perché il codice paese NO poteva silenziosamente diventare false. Una sorpresa più frequente qui riguarda la precisione: i numeri JSON sono in virgola mobile IEEE-754 a doppia precisione, quindi un intero a 64 bit oltre 2^53 può perdere una cifra o due nel momento stesso della conversione, anche se il valore YAML originale era esatto.
Dove lo incontrerai
- Trasformare un manifest Kubernetes o un docker-compose in JSON per uno script
- Incollare la risposta di una API in un file di configurazione che vuole YAML
- Verificare che la definizione di una pipeline CI venga interpretata come previsto
- Confrontare due formati di configurazione durante una migrazione tra strumenti
Domande frequenti
Che fine fanno i miei commenti?
Vengono persi. JSON non ha una sintassi per i commenti, quindi convertendo da YAML a JSON ogni riga che inizia con # sparisce definitivamente. Conserva l'originale YAML se i commenti sono importanti.
Ancore e alias sono supportati?
Sì, e vengono espansi nel valore a cui puntano, perché JSON non sa rappresentare un riferimento. Gli alias che rimandano ad altri alias crescono molto in fretta, perciò le conversioni che produrrebbero un documento enorme vengono rifiutate invece che tentate.
I miei dati vengono memorizzati?
No. La conversione avviene sul server solo per quella richiesta; in seguito non viene registrato né conservato nulla.
Perché il mio grande numero intero è cambiato leggermente dopo la conversione in JSON?
JSON rappresenta tutti i numeri come numeri in virgola mobile IEEE-754 a doppia precisione — lo stesso tipo numerico usato da JavaScript —, che può contenere esattamente gli interi solo fino a 2^53 (9.007.199.254.740.991). Un valore YAML come un ID di database a 64 bit o un ID snowflake in stile Discord può superare questo limite, e convertirlo in un numero JSON lo arrotonda silenziosamente. Se la precisione esatta è importante, mantieni tali valori tra virgolette come stringhe YAML prima di convertire, così passano come stringhe JSON invece che come numeri.