Konverter YAML ⇄ JSON

YAML ke JSON dan sebaliknya, validasi dengan nomor baris dan peringatan YAML 1.1.

Convert

Valid · 1 documents

  • Line 8: NO is a string in YAML 1.2, but a boolean in YAML 1.1 parsers (PyYAML, older Ruby). Quote it to be safe.
  • Line 9: 0644 has a leading zero. YAML 1.2 reads it as a decimal number, YAML 1.1 as octal. Write 0o… or quote it.

Apa yang dilakukan

Mengubah YAML ke JSON, JSON ke YAML, dan memformat YAML dengan gaya yang seragam. Setiap konversi sekaligus memvalidasi: kesalahan ditunjukkan dengan baris dan kolom. Parser-nya dibuat sendiri dan berjalan di browser, jadi file konfigurasi tidak meninggalkan perangkat Anda.

YAML yang dipahami

Bagian umum YAML 1.2: mapping dan list bersarang, koleksi satu baris [a, b] dan {a: 1}, string biasa, berkutip tunggal atau ganda, blok | dan > dengan indikator - dan +, anchor, alias, kunci gabung <<, tag standar, dan beberapa dokumen yang dipisah --- (menjadi array JSON). Kunci kompleks, tag kustom seperti !Ref, dan %TAG dilaporkan sebagai kesalahan. Komentar dibuang.

Jebakan YAML 1.1

Banyak program masih membaca YAML dengan aturan 1.1. NO, yes, on, dan off adalah string di YAML 1.2 tetapi boolean di 1.1 ("masalah Norwegia"); 0755 adalah 755 di 1.2 dan oktal 493 di 1.1. Alat ini memberi peringatan dengan nomor baris dan, dari JSON ke YAML, menaruh string seperti itu dalam tanda kutip. Urutan kunci dipertahankan dan angka panjang tidak dibulatkan.

Pertanyaan yang sering diajukan

Mengapa kode negara NO menjadi false?

Di YAML 1.1, NO adalah boolean. YAML 1.2 memperlakukannya sebagai string; alat ini memakai 1.2 tetapi memberi peringatan. Tulis 'NO' dalam tanda kutip agar semua parser sepakat.

Mengapa tab dianggap kesalahan?

Spesifikasi YAML melarang tab untuk indentasi. Gunakan spasi.

Bagaimana dengan komentar?

Komentar dibuang, karena JSON tidak punya komentar dan YAML yang diformat dibangun ulang dari datanya.