onlinetools.dev

JSON ↔ YAML ↔ TOML Dönüştürücü

JSON, YAML ve TOML arasında biçim otomatik algılamayla dönüştürün

Yerelde çalışır
loading…
Bu araç hakkında

JSON, YAML ve TOML arasında her yönde dönüştürün. Kaynak biçim siz yapıştırdıkça kendiliğinden algılanır — köşeli parantezler JSON’a, key: iki noktaları YAML’a, [tablolar] TOML’a işaret eder — belirsiz girdiler için elle geçiş de vardır. Dönüştürme gerçek bir ayrıştırmadan geçer; yani çıktı satır satır bir metin dönüşümü değil, geçerliliği güvence altına alınmış bir belgedir.

Her biçimin gerçek güçlü yanları vardır: API’ler ve makine arası değişim için JSON, insan tarafından düzenlenen yapılandırmalar için YAML (Kubernetes, CI hatları), iyi türlenmiş yapılandırma dosyaları için TOML (Cargo, pyproject). Veriyi bunlar arasında elle taşımak girinti ve tırnak hatalarını davet eder; bu dönüştürme onları ortadan kaldırır.

Dönüştürücü biçim sınırları konusunda dürüsttür: TOML’un üst düzey dizileri ve null değeri yoktur; böyle belgeleri dönüştürmek veriyi sessizce düşürmek yerine nedenini bildirir.

Sıkça sorulan sorular

Yorumlar dönüşümden sağ çıkar mı?
Hayır — JSON’un yorum sözdizimi yoktur ve dönüştürme, yorum taşımayan ayrıştırılmış veri yapısı üzerinden ilerler. YAML → JSON → YAML dönüşümü yorumları geri dönülemez biçimde kaybeder; yorumlar önemliyse özgün dosyayı saklayın.
YAML’daki “no” değerim neden false oldu?
YAML 1.1, yes/no/on/off değerlerini boole sayar ve ülke kodu NO ünlü biçimde false olur. Buradaki ayrıştırıcı YAML 1.2’yi izler (yalnızca true/false), ama eski ayrıştırıcılar için yazılmış dosyalar yine de sürpriz yapabilir. Boole, sayı ya da tarih gibi görünen dizgeleri tırnak içine alın.
JSON’um neden TOML’a dönüşmüyor?
TOML üst düzeyde bir tablo (nesne) gerektirir — diziler ya da çıplak skalerler TOML belgesi olamaz — ve null değeri yoktur. Veriyi yeniden yapılandırın (diziyi bir anahtarın altına alın, null’ları kaldırın ya da varsayılan verin), dönüşecektir.
YAML, JSON’un bir üst kümesi mi?
Pratikte evet — YAML 1.2 neredeyse tüm JSON belgelerini ayrıştırır; JSON’u bir YAML yapılandırmasına yapıştırmanın genelde çalışmasının nedeni budur. Tersi doğru değildir: YAML’ın çapaları, çok satırlı skalerleri ve etiketlerinin JSON karşılığı yoktur; dönüşümde genişletilir ya da dizgeye çevrilirler.
İlgili araçlar