TOML'dan JSON'a
Cargo.toml, pyproject.toml ya da herhangi bir TOML dosyasını JSON'a çevirin; hatalı satır ve sütun gösterilir
Verileriniz sizde kalır. Dönüşüm tarayıcının içinde yapılır, hiçbir şey sunucuya gitmez.
Bu araç işinizi gördü mü?
Teşekkürler, geri bildiriminiz alındı.
Nasıl çalışır?
Bir TOML ayar dosyasını JavaScript'e, jq'ya, bir API'ye ya da TOML okuyamayan bir araca vermek için önce JSON'a çevirmeniz gerekir. Dosyanın içeriğini sol panele yapıştırın; JSON sağ panelde oluşur. Örnekteki [veritabani] başlığı "veritabani" nesnesine, iki kez yazılan [[depo]] başlığı iki kayıtlı "depo" dizisine dönüşür. TOML'daki 1_200 gibi alt çizgili sayılar düz 1200 olur, # ile başlayan yorum satırları ise JSON yorum taşımadığı için atılır. JSON'da tarih türü olmadığından guncelleme = 2026-09-27T09:00:00+03:00 değeri aynı yazımla ISO metnine döner; yerel tarih (2026-09-27) ve yerel saat (09:00:00) da metin olur. Sayfa aynı zamanda bir TOML doğrulayıcısıdır: metin geçersizse çeviri yapılmaz, sorunun satırı ve sütunu, mümkünse olası sebebiyle yazılır (ör. "Aynı anahtar ya da [tablo] iki kez tanımlanmış"). Yön'ü "JSON → TOML" yaparsanız aynı sayfa ters yönde çalışır.
Bu araç toml to json, toml to json converter, toml validator aramalarıyla da biliniyor.
TOML dosyası nedir?
TOML dosyası, .toml uzantılı, anahtar = değer satırlarından ve [bölüm] başlıklarından oluşan bir ayar dosyasıdır. Rust projelerinin Cargo.toml'u bağımlılıkları, Python projelerinin pyproject.toml'u paket bilgisini ve araç ayarlarını bu biçimde tutar. Biçim insan okuması için tasarlandığından yorum satırlarına izin verir; ama sözdizimi katıdır ve tek bir hatalı satır bütün dosyanın okunmasını durdurur.
ISO 8601 tarih biçimi nedir?
ISO 8601, tarih ve saati büyükten küçüğe yazan uluslararası standarttır: 2026-09-27 tarih, 09:00:00 saat, 2026-09-27T09:00:00+03:00 ise Türkiye saatiyle bir an demektir. Sondaki +03:00 UTC'ye göre farkı, Z ise UTC'yi gösterir. TOML tarihleri bu biçimde yazar, JSON'a da aynı biçimde metin olarak geçerler; böylece her dilde tarih türüne kayıpsız geri çevrilebilirler.
TOML doğrulama ile TOML'dan JSON'a çevirme arasındaki fark nedir?
Doğrulama yalnız "bu metin TOML kurallarına uyuyor mu" sorusunu cevaplar; çeviri ise geçerli metni başka bir biçimde yeniden yazar. Bu sayfa ikisini aynı adımda yapar: metin geçersizse çeviri durur ve hatanın yeri söylenir, geçerliyse JSON oluşur. Ama TOML'a uyan bir dosya, onu okuyan programın beklentisine uymayabilir: [package] tablosunda name alanının eksik olması TOML hatası değil Cargo hatasıdır; bunu ilgili aracın kendisi denetler.
Tuzaklar: tarihler, büyük sayılar ve inf/nan
TOML'un dört tarih-saat türü vardır (ofsetli tarih-saat, yerel tarih-saat, yerel tarih, yerel saat); JSON'da hiçbiri yoktur. Araç hepsini ISO 8601 metnine çevirir ve notta kaç değerin çevrildiğini söyler; JSON'u okuyan programın bu alanları yeniden tarihe çevirmesi gerekir. JavaScript tarihi milisaniye hassasiyetindedir: 00:32:00.999999 gibi mikro saniyeli bir saat 00:32:00.999 olarak yazılır.
TOML tam sayıları 64 bittir; JavaScript sayıları ise 2^53'ten büyük tam sayıyı yuvarlar. Araç bu büyüklükteki sayıları ayrı okur ve JSON'a rakamı rakamına yazar (9223372036854775807 aynen kalır). TOML'daki inf ve nan değerlerinin JSON'da karşılığı yoktur; bunlar null olur ve notta uyarı çıkar. 72.0 gibi tam değerli ondalıklar JSON'da 72 yazılır; sayı değeri aynıdır.
Doğrulayıcı olarak kullanma ve sık hatalar
Cargo ya da pip bir TOML dosyası için yalnız "invalid TOML" dediğinde metni buraya yapıştırın: hata satırı ve sütunu gösterilir. En sık sebepler aynı anahtarın ya da [tablo]'nun iki kez yazılması, tırnaksız metin (ad = Ayşe yerine ad = "Ayşe" olmalı), bir satırda iki anahtar = değer bulunması ve doğru/yanlış değerlerinin true/false yerine True/False diye büyük harfle yazılmasıdır. Takvimde olmayan bir tarih (2021-02-29) de hata sayılır: bazı TOML okuyucuları böyle bir tarihi sessizce 1 Mart'a kaydırır, bu sayfa ise satırını gösterip durur.
Metin geçerliyse sağda JSON görünür ve notta anahtar sayısı yazar; bu, dosyanın TOML kurallarına (1.1 sürümü; 1.0 dosyaları da geçer) uyduğunun işaretidir. Aracın kullandığı okuyucu, TOML'un resmî uyumluluk testlerini geçen açık kaynak smol-toml kütüphanesidir ve sayfanın içinde çalışır.
Sık sorulanlar
TOML dosyası JSON'a nasıl çevrilir?
TOML metnini bu sayfanın sol paneline yapıştırın; JSON sağ panelde oluşur. [tablo] başlıkları nesneye, [[tablo]] başlıkları nesne dizisine dönüşür. Sonucu kopyalayın ya da .json dosyası olarak indirin.
TOML dosyamın geçerli olup olmadığını nasıl anlarım?
Dosyanın içeriğini buraya yapıştırın. Geçerliyse sağda JSON görünür; geçersizse hatanın satırı, sütunu ve olası sebebi yazılır. Bu denetim TOML 1.1 kurallarına göre yapılır (1.0 dosyaları da geçer); Cargo'nun ya da Poetry'nin kendi alan kuralları (ör. zorunlu name alanı) ayrıca denetlenmez.
Tarihler JSON'da neden metin oldu?
JSON'un tarih türü yoktur; TOML'daki tarih-saat değerleri bu yüzden ISO 8601 biçiminde metin olarak yazılır (ör. "2026-09-27T09:00:00+03:00"). JSON'u okuyan programda bu metni tarihe çevirmeniz gerekir; ISO biçimini bütün yaygın diller doğrudan okur.
Dosyam bir sunucuya gönderiliyor mu?
Hayır. TOML sayfaya gömülü açık kaynak bir okuyucuyla tamamen tarayıcınızda okunur; parola ya da erişim anahtarı içeren bir ayar dosyası bile bu sayfadan çıkmaz. Sayfa yüklendikten sonra internet bağlantısı olmadan da çalışır.