JSON'dan YAML'a Dönüştürücü

JSON ile YAML arasında anahtar sırasını koruyarak çevirin

JSON'u YAML'a ve geri çevirin, anahtar sırası korunurOtomatik algıla
JSON girdisi
YAML çıktısı

Araç rehberi

JSON'dan YAML'a Dönüştürücü hakkında

Bu donusturucu JSON belgesini YAML bicimine, YAML belgesini de JSON bicimine cevirir; boylece ayni yapilandirma bir API govdesi ile bir Kubernetes manifestosu, bir Docker Compose dosyasi, bir GitHub Actions is akisi ya da bir OpenAPI belgesi arasinda yeniden yazilmadan tasinabilir.

Donusum siz yazdikca calisir, anahtar sirasi yazildigi gibi korunur ve girinti 2 veya 4 bosluk olarak ayarlanabilir. Sozdizimi hatalari tam satir ve sutun bilgisiyle bildirilir.

JSON belgesini YAML bicimine cevirme adimlari

  1. JSON metnini giris paneline yapistirin. YAML sonucu hicbir dugmeye basmadan aninda gorunur.
  2. Yon dugmesiyle YAML to JSON yonune gecin; ornegin yalnizca JSON okuyan bir betige manifesto vermek icin.
  3. Depo stilinize uyacak sekilde 2 veya 4 bosluk girinti secin. Kubernetes ve GitHub Actions dosyalari genellikle 2 kullanir.
  4. Girdi gecersizse bildirilen satir ve sutunu okuyun, o noktayi duzeltin; cikti kendiliginden tazelenir.

Hangi durumlarda ise yarar

  • kubectl ciktisi olarak alinan bir JSON kaynagini, depoya isleyebileceginiz okunakli bir YAML manifestosuna cevirmek.
  • Uretilen yapilandirmayi denerken bir Docker Compose servis blogunu cevirmek.
  • Bir OpenAPI tanimini JSON ve YAML bicimleri arasinda tasimak, cunku her taraftaki araclar birini tercih eder.
  • JSON olarak uretilmis bir GitHub Actions is akisi parcasini, calistiricinin bekledigi YAML bicimine yeniden yazmak.

Donusumleri bozan YAML kurallari

YAML 1.2 neredeyse JSON un ust kumesidir, dolayisiyla gecerli JSON genellikle gecerli YAML sayilir. Sorunlar ters yonde cikar; orada YAML, JSON un asla tahmin etmedigi turleri tahmin eder.

  • Norway problem: NO, no, yes, on ve off degerleri YAML 1.1 cozumleyicileri tarafindan mantiksal deger olarak okunur, dolayisiyla ulke kodu NO degeri false olur. Bu tur degerleri tirnak icine alin.
  • Bastaki sifirlar: 010 gibi bir deger metin yerine sekizlik sayi olarak okunabilir. Tanimlayicilari, posta kodlarini ve parca numaralarini tirnak icine alin.
  • Surum numaralari: tirnaksiz 1.10 degeri 1.1 ondalikli sayisina donusur ve sondaki sifir kaybolur.
  • Girintide sekme degil bosluk kullanilmalidir ve bir deger tanitan her iki nokta ust ustenin ardindan bir bosluk gelmelidir.

JSON'dan YAML'a hakkında sık sorulan sorular

Donusturucu anahtarlarimin sirasini degistirir mi
Hayir. Anahtarlar verdiginiz sirayla cikar, bu da surum kontrolunde farklarin kucuk kalmasini saglar.
Yorum satirlarima ne olur
JSON un yorum sozdizimi yoktur, dolayisiyla JSON to YAML yonu yorum uyduramaz, YAML to JSON yonu ise kaynaktaki yorumlari atar. Yorumlar onemliyse ozgun dosyayi saklayin.
Cikti capa ve takma ad icerir mi
Hayir. Tekrarlanan yapilar tam olarak yazilir, boylece takma ad destegi olmayan her cozumleyici sonucu okuyabilir.
Yapilandirmam bir yere yukleniyor mu
Hayir. Cozumleme ve donusum js-yaml kullanilarak tarayicinizda gerceklesir, yapistirdiginiz hicbir sey makinenizden ayrilmaz ya da wetool.site tarafindan saklanmaz.
Bir YAML degerinin turu donusumden sonra neden degisiyor
YAML tirnaksiz skaler degerlerin turunu tahmin eder. Degeri YAML kaynaginda tirnak icine alirsaniz JSON metnine donusur.

JSON ile YAML karsilastirmasi

JSON kati ve tek anlamlidir, bu da onu iyi bir aktarim bicimi yapar; ancak yorum destegi yoktur ve derin ic ice yapilarda gurultulu hale gelir. YAML incelemede daha kolay okunur, bunun bedeli tur tahmini ve girintiye duyarliliktir. Cogu ekip yapilandirmayi YAML olarak tutar ve sinirlarda JSON alisverisi yapar; bu iki yonlu donusumun amaci tam olarak budur.

Depoya islemeden once tirnak kontrol listesi

Donusumden kaynaklanan bozuk dagitimlarin cogu, turunu kaybetmis bir degerden gelir. YAML ciktisini su durumlar icin tarayin.

  • Ulke ve dil kodlari, ozellikle NO ve kelime gibi okunan her iki harfli deger.
  • Aslinda tanimlayici olan sayilar: hesap numaralari, basina sifir eklenmis port degerleri, bastaki sifiri olan her sey.
  • 1.10 veya 3.20 gibi surum ve imaj etiketleri; ondalikli sayi sayildiklarinda sondaki sifiri kaybederler.