Skip to content

TOML to JSON Dönüştürücü

TOML yapıştırın, tarayıcınızda anında JSON alın. Cargo.toml ve pyproject.toml hazır, tarih ve iç içe tablolar doğru işlenir. %100 çevrimiçi, yükleme yok.

Takip Yok Tarayıcıda Çalışır Ücretsiz
Seçenekler · 2 boşluk
Girinti
0 karakter
JSON Çıkış
0 satır
TOML 1.0.0 belirtim uyumluluğu, tarih-saat sadakati ve güvenli büyük tam sayı işleme için incelendi — Go Tools Mühendislik Ekibi · Jul 2, 2026

TOML Nedir ve Neden JSON'a Dönüştürülür?

TOML (Tom's Obvious, Minimal Language), Tom Preston-Werner tarafından kesin, insanların okuması kolay ve önemsiz biçimde bir karma tabloya eşlenebilir olacak şekilde oluşturulmuş bir yapılandırma dosyası biçimidir. Rust ekosistemi (Cargo.toml), modern Python paketleme (pyproject.toml, PEP 518 ve PEP 621'de standartlaştırılmış) ve Hugo, Netlify, Poetry ve Foundry gibi araçlar için varsayılan yapılandırma biçimi haline gelmiştir. JSON ise evrensel makine değişim biçimidir — her dil onu ayrıştırır, her API onu konuşur. Bu nedenle TOML'u JSON'a dönüştürmek yaygın bir görevdir: yapılandırmayı okunabilir TOML olarak yazarsınız, sonra bir programı beslemek, JSON araçlarıyla incelemek veya bir işlem hattında karşılaştırmak için JSON'a dönüştürürsünüz.

Bu araç, doğruluk açısından önemli olan birkaç ayırt edici özelliğe sahiptir:

**1. Tarih-saat sadakati.** TOML, JSON'un tamamen eksik olduğu birinci sınıf tarih ve saat türlerine sahiptir — ofsetli tarih-saat, yerel tarih-saat, yerel tarih ve yerel saat. Naif dönüştürücüler bunların hepsini ISO zaman damgalarına düzleştirir, böylece 1979-05-27 gibi yerel bir tarih, sessizce bir saat ve saat dilimi uydurarak 1979-05-27T00:00:00Z olur. Bu araç, tam TOML türünü korur: yerel tarihler takvim tarihleri, yerel saatler saatler olarak kalır ve yalnızca ofsetli tarih-saatler bir saat dilimi taşır. Bu, verinizi dürüst ve gidiş-dönüşleri kayıpsız tutar.

**2. Tam TOML 1.0.0 desteği.** İç içe tablolar, noktalı anahtarlar, satır içi tablolar ve tablo dizileri ([[section]]), sıfır bağımlılıklı smol-toml kütüphanesi kullanılarak TOML 1.0.0 belirtimine göre doğru biçimde ayrıştırılır. Karışık satır içi ve standart tablolara sahip gerçek Cargo.toml ve pyproject.toml dosyaları, belirtimin gerektirdiği gibi tam olarak dönüştürülür.

**3. Dürüst büyük tam sayı işleme.** TOML tam sayıları 64 bittir, ancak tarayıcı JavaScript'i tam sayıları yalnızca 2^53 - 1'e kadar tam olarak tutabilir. Büyük bir değeri sessizce bozmak veya çökmek yerine, bu araç en yakın JSON sayısına dönüştürür ve sizi uyarır, böylece değeri bunun yerine bir dize olarak saklamayı seçebilirsiniz. Temel bir tarayıcı kısıtlaması hakkındaki bu dürüstlük, çoğu dönüştürücünün üstünden geçtiği bir şeydir.

**4. %100 tarayıcı tabanlı gizlilik.** TOML'unuz — kayıt defteri belirteçleri, dahili paket kaynakları veya dağıtım gizli anahtarları içerebilir — tarayıcınızdan asla ayrılmaz. Yükleme yok, sunucu yok, günlük yok. Bunu tarayıcınızın Ağ sekmesinde doğrulayabilirsiniz.

Ters yönü mü istiyorsunuz? JSON to TOML Dönüştürücü aracını kullanın. Diğer yapılandırma biçimleri arasında dönüştürüyor musunuz? JSON to YAML Dönüştürücü ve YAML to JSON Dönüştürücü araçlarını deneyin veya JSON çıktınızı önce JSON Biçimlendirici ile doğrulayıp güzelce yazdırın. TOML, JSON ve YAML'ın her birinin bir yeri vardır: insan tarafından düzenlenen uygulama yapılandırması için TOML, makine değişimi için JSON ve derin iç içe altyapı manifestoları için YAML. Bu dönüştürücü, ilk ikisi arasında tek bir kod satırı olmadan geçiş yapmanızı sağlar.

// Convert TOML to JSON in Node.js using the smol-toml library
import { parse } from 'smol-toml';

const toml = `
[package]
name = "my-app"
version = "1.0.0"

[dependencies]
serde = { version = "1.0", features = ["derive"] }
`;

const data = parse(toml);
const json = JSON.stringify(data, null, 2);

console.log(json);
// {
//   "package": { "name": "my-app", "version": "1.0.0" },
//   "dependencies": {
//     "serde": { "version": "1.0", "features": ["derive"] }
//   }
// }

Temel Özellikler

Canlı Dönüştürme

JSON çıktısı, TOML yazarken veya yapıştırırken anında güncellenir — Dönüştür düğmesi gerekmez. Büyük girişler (>200KB) tarayıcıyı yanıt verir tutmak için otomatik olarak manuel moda geçer.

Tarih-Saat Sadakati

TOML ofsetli tarih-saatleri, yerel tarih-saatleri, yerel tarihleri ve yerel saatleri, orijinal türü koruyan JSON dizelerine dönüştürülür — uydurma gece yarısı zaman damgaları yok, böylece gidiş-dönüşler kayıpsız kalır.

Tam TOML 1.0.0 Desteği

İç içe tablolar, noktalı anahtarlar, satır içi tablolar ve tablo dizileri ([[section]]), sıfır bağımlılıklı smol-toml motoruyla, TOML 1.0.0 belirtimine uygun biçimde doğru olarak ayrıştırılır.

Cargo.toml ve pyproject.toml Hazır

Gerçek dünyadaki en yaygın TOML dosyaları için optimize edilmiştir — Rust manifestleri ve Python paketleme yapılandırmaları — satır içi tablolar ve tablo dizileri dahil. Üretilen tam JSON yapısını görmek için bir örnek yükleyin.

Dürüst Büyük Tam Sayı Uyarıları

JavaScript'in güvenli aralığının (2^53) ötesindeki tam sayılar JSON'da tam olarak temsil edilemez — araç bunları en yakın sayıya dönüştürür ve değeri sessizce bozmak yerine sizi uyarır.

%100 Tarayıcı Tabanlı Gizlilik

Tüm ayrıştırma tarayıcınızda yerel olarak çalışır. TOML'unuz — kayıt defteri belirteçleri, özel paket kaynakları ve dağıtım gizli anahtarları dahil — asla yüklenmez, saklanmaz veya günlüğe kaydedilmez.

Örnekler

Cargo.toml (Rust)

[package]
name = "my-app"
version = "1.0.0"
edition = "2021"
authors = ["Jane Doe <jane@example.com>"]

[dependencies]
serde = { version = "1.0", features = ["derive"] }
tokio = { version = "1", features = ["full"] }

[dev-dependencies]
criterion = "0.5"

[[bin]]
name = "my-app"
path = "src/main.rs"

Bir Rust Cargo.toml manifest dosyasını JSON'a dönüştürün — araç geliştirme, bağımlılık panoları veya JSON bekleyen betiklere cargo meta verisi beslemek için kullanışlıdır.

pyproject.toml (Python)

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[project]
name = "my-package"
version = "0.3.1"
requires-python = ">=3.10"
dependencies = [
  "requests>=2.31",
  "pydantic>=2.0"
]

[project.optional-dependencies]
dev = ["pytest>=8.0", "ruff>=0.4"]

[tool.ruff]
line-length = 100

Proje meta verisini, bağımlılıkları ve araç yapılandırmasını programatik olarak incelemek için bir PEP 621 pyproject.toml dosyasını JSON'a dönüştürün.

netlify.toml

[build]
command = "npm run build"
publish = "dist"

[build.environment]
NODE_VERSION = "20"

[[redirects]]
from = "/old-path"
to = "/new-path"
status = 301
force = true

[[headers]]
for = "/*"

[headers.values]
X-Frame-Options = "DENY"

Yönlendirmeleri ve başlıkları denetlemek veya başka bir platform için eşdeğer yapılandırma üretmek amacıyla bir Netlify derleme yapılandırmasını JSON'a dönüştürün.

Hugo config.toml

baseURL = "https://example.org"
languageCode = "en-us"
title = "My Hugo Site"
theme = "ananke"

[params]
description = "A static site built with Hugo"
mainSections = ["posts", "docs"]

[[menu.main]]
name = "Blog"
url = "/posts/"
weight = 1

[[menu.main]]
name = "About"
url = "/about/"
weight = 2

Ayarları taşımak, yapılandırmayı karşılaştırmak veya bir yapılandırma arayüzünü beslemek için bir Hugo site config.toml dosyasını JSON'a dönüştürün.

rustfmt.toml

edition = "2021"
max_width = 100
hard_tabs = false
tab_spaces = 4
newline_style = "Unix"
use_small_heuristics = "Default"
reorder_imports = true
reorder_modules = true

Düz bir rustfmt.toml dosyasını JSON'a dönüştürün — üst düzey anahtar-değer çiftlerinin (tablo yokken) doğrudan bir JSON nesnesine nasıl eşlendiğine iyi bir örnek.

Tarih ve tablo dizileri içeren uygulama yapılandırması

title = "Deployment Log"
last_deployed = 1979-05-27T07:32:00Z
release_date = 1979-05-27
maintenance_window = 02:00:00

[[servers]]
name = "alpha"
ip = "10.0.0.1"
ports = [8001, 8002]

[[servers]]
name = "beta"
ip = "10.0.0.2"
ports = [9001]

TOML'un yerel tarih-saatlerinin (ofsetli tarih-saat, yerel tarih, yerel saat) ve tablo dizilerinin JSON dizeleri ile dizilerine nasıl temiz biçimde dönüştüğünü gösterir.

Nasıl Kullanılır

  1. 1

    TOML'unuzu Yapıştırın

    TOML'unuzu yukarıdaki giriş alanına girin veya yapıştırın. Gerçek bir Cargo.toml, pyproject.toml ya da dağıtım yapılandırmasını denemek için 'Örnek yükle'ye de tıklayabilirsiniz.

  2. 2

    Canlı JSON Çıktısını Görün

    JSON, çıktı panelinde anında görünür. Hedef biçiminize uyması için Girinti seçeneğini (2 veya 4 boşluk) ayarlayın. Tarihler, tablolar ve tablo dizileri otomatik olarak işlenir.

  3. 3

    Kopyalayın veya İndirin

    JSON'u panonuza almak için Kopyala'ya veya programınız, API'niz ya da araç geliştirmeniz için hazır bir .json dosyası olarak kaydetmek için İndir'e tıklayın.

Yaygın TOML Tuzakları

Tırnaksız Dize Değerleri

TOML'da dize değerleri tırnak içine alınmalıdır. Eşittir işaretinin sağındaki çıplak bir sözcük yalnızca boole değerleri (true/false), sayılar, tarihler için veya bir dizinin parçası olarak geçerlidir. Dizelerinizi çift veya tek tırnakla alın.

✗ Yanlış
name = my-app
✓ Doğru
name = "my-app"

Yinelenen Anahtarlar

TOML, aynı tablo içinde aynı anahtarın iki kez tanımlanmasını ve zaten tanımlanmış bir tablonun yeniden tanımlanmasını yasaklar. Bu, yapılandırma parçalarını birleştirirken yaygın bir hatadır. Her anahtar ve tablo benzersiz olmalıdır.

✗ Yanlış
name = "a"
name = "b"
✓ Doğru
name = "a"
alt_name = "b"

Geçersiz Tarih-Saat Biçimi

TOML tarih-saatleri RFC 3339'u izler. Bir tarih için tam 4 haneli yıl, 2 haneli ay ve 2 haneli gün gerekir; bir tarih-saat için T (veya boşluk) ayırıcısı gerekir. Bozuk tarihler ayrıştırılamaz.

✗ Yanlış
released = 2026-7-2
✓ Doğru
released = 2026-07-02

Eksik Kapatma Parantezi

Diziler, satır içi tablolar ve tablo başlıkları kapatılmalıdır. Kapatılmamış bir [ veya {, sorunun tespit edildiği satır ve sütunu gösteren bir ayrıştırma hatası üretir.

✗ Yanlış
ports = [8001, 8002
✓ Doğru
ports = [8001, 8002]

Güvenli Aralığın Ötesinde Tam Sayı

TOML tam sayıları 64 bittir, ancak tarayıcıdaki JSON sayıları 2^53 - 1 ile sınırlıdır. Bunun ötesindeki değerler dönüştürme sırasında yuvarlanır ve bir uyarı gösterilir. Çok büyük tam sayıları tam tutmak için tırnak içi dizeler olarak saklayın.

✗ Yanlış
snowflake = 1420070400000000000
✓ Doğru
snowflake = "1420070400000000000"

Bir Tabloyu Yeniden Tanımlama

[servers] gibi bir tablo tanımlandıktan sonra, aynı başlıkla tekrar açamazsınız. Birden çok giriş elde etmek için, bir JSON nesne dizisine dönüşen bir tablo dizisi ([[servers]]) kullanın.

✗ Yanlış
[servers]
name = "a"
[servers]
name = "b"
✓ Doğru
[[servers]]
name = "a"
[[servers]]
name = "b"

Yaygın Kullanım Senaryoları

Rust Cargo Meta Verisi
Bağımlılık panoları oluşturmak, crate sürümlerini ve özelliklerini denetlemek veya manifest verisini TOML yerine JSON bekleyen betiklere ve CI'ye beslemek için Cargo.toml'u JSON'a dönüştürün.
Python Proje Yapılandırması
PEP 621 proje meta verisini incelemek, bağımlılık listelerini çıkarmak veya paketleme yapılandırmasını programatik olarak okuyan araçları sürmek için pyproject.toml'u JSON'a dönüştürün.
Dağıtım Yapılandırması İncelemesi
Yönlendirmeleri, başlıkları ve derleme ayarlarını denetlemek veya farklı bir platform için eşdeğer yapılandırma üretmek amacıyla netlify.toml, foundry.toml ya da diğer platform yapılandırmalarını JSON'a dönüştürün.
Yapılandırma Biçimi Geçişi
JSON'u tercih eden bir sisteme geçerken TOML uygulama yapılandırmasını JSON'a dönüştürün veya jq gibi JSON araçlarıyla daha ileri dönüştürmeden önce bir ara adım olarak kullanın.
Statik Site Ayarları
Site ayarlarını taşımak, ortamlar arasında yapılandırmayı karşılaştırmak veya JSON destekli bir ayarlar arayüzü oluşturmak için Hugo config.toml'u JSON'a dönüştürün.
API ve Betik Girişi
İnsan tarafından yazılmış TOML'u, bir REST API'nin, sunucusuz işlevin veya otomasyon betiğinin doğrudan tüketebileceği JSON'a dönüştürerek okunabilir yapılandırma ile makine girişi arasında köprü kurun.

Teknik Ayrıntılar

smol-toml ile TOML 1.0.0 Ayrıştırma
TOML, sıfır bağımlılıklı, tam TOML 1.0.0 uyumlu bir ayrıştırıcı olan smol-toml kütüphanesiyle ayrıştırılır. İç içe tabloları, noktalı anahtarları, satır içi tabloları, tablo dizilerini, çok satırlı dizeleri ve dört tarih-saat türünün tümünü doğru şekilde işler ve ayrıştırma hatalarını satır ve sütun konumlarıyla bildirir.
Kayıpsız Tarih-Saat ve Güvenli Tam Sayı İşleme
TOML tarih-saatleri, tam türlerini (ofsetli tarih-saat, yerel tarih-saat, yerel tarih, yerel saat) koruyan JSON dizelerine seri hale getirilir. JavaScript'in güvenli aralığının (2^53 - 1) ötesindeki tam sayılar, ayrıştırma sırasında BigInt'e yükseltilir, ardından bir hassasiyet uyarısıyla en yakın JSON sayısına dönüştürülür, böylece geçerli TOML asla dönüştürülemeden kalmaz.
%100 Tarayıcı Tabanlı — Yükleme Yok, Sunucu Yok
Tüm işlemler tarayıcınızın JavaScript motorunda gerçekleşir. Hiçbir noktada veri iletilmez. 200KB'ın üzerindeki girişler, arayüzü yanıt verir tutmak için canlıdan manuel moda (açık bir Dönüştür tıklaması) geçer.

En İyi Uygulamalar

Çok Büyük Tam Sayıları Dize Olarak Saklayın
TOML'unuzda 2^53 - 1'in ötesinde tam sayılar varsa (Snowflake kimlikleri, nanosaniye zaman damgaları, büyük sayaçlar), dönüştürmeden önce bunları dize olarak tırnak içine alın. Tarayıcıdaki JSON sayıları bunları tam olarak tutamaz ve araç yuvarlaması gerektiğinde sizi uyarır.
JSON Çıktısı İçin 2 Boşluk Girinti Tercih Edin
İki boşluk girinti, JSON için en yaygın kullanılan kuraldır ve çoğu biçimlendirici ve karşılaştırma aracıyla iyi çalışan temiz, okunabilir bir çıktı üretir. 4 boşluk girintiyi bir stil kılavuzu gerektirdiğinde saklayın.
Kullanmadan Önce JSON Çıktısını Doğrulayın
Dönüştürdükten sonra, JSON'u elle düzenlemeyi veya katı bir yere beslemeyi planlıyorsanız, geçerli ve tutarlı biçimlendirilmiş olduğunu doğrulamak için JSON Biçimlendirici aracımızdan geçirin.
TOML Yorumlarını Ayrı Tutun
JSON'da yorum söz dizimi olmadığından, TOML # yorumları dönüştürmede atılır. Yorumlar önemli belgelemeyse, orijinal TOML'u üretilen JSON'un yanında sürüm denetiminde tutun.
Tekrarlanan Bölümler İçin Tablo Dizileri Kullanın
Birden çok benzer bölümünüz olduğunda (sunucular, yönlendirmeler, ikili dosyalar), bunları [section] tekrar etmek yerine tablo dizileri ([[section]]) olarak yazın. Yinelenen tablo hatasına neden olmak yerine temiz bir JSON nesne dizisine dönüşürler.

Sıkça Sorulan Sorular

TOML'u JSON'a çevrimiçi nasıl dönüştürürüm?
TOML'unuzu yukarıdaki giriş alanına yapıştırın. Araç bunu ayrıştırır ve tarayıcınızda anında JSON üretir — düğmeye tıklamak gerekmez. Seçenekler panelinde JSON girintisini 2 ve 4 boşluk arasında değiştirebilirsiniz. JSON çıktı alanında görüntülendiğinde, panoya almak için Kopyala'ya veya .json dosyası olarak kaydetmek için İndir'e tıklayın. Her şey yerel olarak çalışır, bu nedenle TOML'unuz cihazınızdan asla ayrılmaz.
TOML nedir ve neden JSON'a dönüştürülür?
TOML (Tom's Obvious, Minimal Language), insanların okuyup yazması kolay olacak şekilde tasarlanmış, bir karma tabloya kesin biçimde eşlenen açık anlamlara sahip bir yapılandırma dosyası biçimidir. Rust'ın Cargo.toml, Python'un pyproject.toml, Hugo, Netlify ve diğer birçok aracı çalıştırır. Bir yapılandırmayı JSON bekleyen bir programa veya API'ye beslemeniz, bir yapılandırma dosyasını programatik olarak incelemeniz, iki yapılandırmayı JSON araçlarıyla karşılaştırmanız ya da bir arayüzü sürmeniz gerektiğinde TOML'u JSON'a dönüştürürsünüz. TOML insanlar tarafından yazılır; JSON makineler tarafından tüketilir — bu dönüştürücü ikisi arasında köprü kurar.
TOML tarih ve saatleri JSON'da nasıl temsil edilir?
JSON'da yerel tarih türü olmadığından, TOML tarih-saatleri dizelere dönüştürülür. Bu araç TOML tarih türünü tam olarak korur: 1979-05-27T07:32:00Z gibi ofsetli bir tarih-saat "1979-05-27T07:32:00.000Z" olur, 1979-05-27 gibi yerel bir tarih "1979-05-27" olarak kalır (tam bir zaman damgasına doldurulmaz) ve 07:32:00 gibi yerel bir saat "07:32:00.000" olur. Birçok dönüştürücü yerel tarihleri yanlışlıkla gece yarısı UTC zaman damgalarına düzleştirir — bu araç orijinal anlamı korur, böylece gidiş-dönüşler kayıpsız olur.
Bu araç Cargo.toml ve pyproject.toml dosyalarını işler mi?
Evet. Cargo.toml ve pyproject.toml, gerçek dünyadaki en yaygın iki TOML dosyasıdır ve iç içe tablolar ([dependencies], [tool.ruff]), satır içi tablolar (serde = { version = "1.0", features = ["derive"] }) ve tablo dizileri ([[bin]]) dahil olmak üzere ikisi de tam olarak desteklenir. Üretilen tam JSON yapısını görmek için yukarıdaki Cargo.toml veya pyproject.toml örneğini yükleyin. Bu, derleme panoları, bağımlılık denetimleri veya proje meta verisini JSON olarak okuyan herhangi bir betik için kullanışlıdır.
TOML tabloları ve tablo dizileri nasıl dönüştürülür?
[owner] gibi bir TOML tablo başlığı, "owner" anahtarı altında iç içe bir JSON nesnesi olur. [tool.ruff] gibi noktalı bir tablo iç içe nesneler olur: { "tool": { "ruff": { ... } } }. Çift köşeli parantezle yazılan bir tablo dizisi — tekrarlanan [[servers]] — bir JSON nesne dizisi olur: { "servers": [ { ... }, { ... } ] }. Satır içi tablolar ({ a = 1, b = 2 }) düz JSON nesneleri olur. Dönüştürme, TOML 1.0.0 belirtimini tam olarak izler.
TOML'u JSON'a dönüştürürken çok büyük tam sayılara ne olur?
TOML 64 bitlik işaretli tam sayıları destekler, ancak JavaScript (ve dolayısıyla tarayıcıdaki JSON) tam sayıları yalnızca 2^53 - 1'e (9007199254740991) kadar tam olarak temsil edebilir. TOML'unuz bundan büyük bir tam sayı içeriyorsa — örneğin bir Snowflake kimliği veya nanosaniye zaman damgası — bu değer bir JSON sayısı olarak kayıpsız temsil edilemez ve değer yuvarlanır, bir uyarı gösterilir. Bu, tarayıcı tabanlı her dönüştürücüyü etkileyen, tarayıcı JavaScript'inin temel bir kısıtlamasıdır. Tam korunum için bu tür değerleri TOML'unuzda tırnak içi dizeler olarak tutun.
TOML verim herhangi bir sunucuya gönderiliyor mu?
Hayır. Tüm ayrıştırma ve dönüştürme tamamen tarayıcınızda JavaScript kullanılarak gerçekleşir. TOML'unuz asla yüklenmez, saklanmaz ve günlüğe kaydedilmez. Bu, aracı özel kayıt defteri belirteçleri içeren Cargo.toml dosyaları, dahili paket dizinleri içeren pyproject.toml, gizli anahtarlar içeren dağıtım yapılandırmaları ve diğer hassas yapılandırmalar için güvenli kılar. Bunu tarayıcınızın Ağ sekmesini açarak doğrulayabilirsiniz — TOML yapıştırmak sıfır ağ isteği tetikler.
JSON'u tekrar TOML'a dönüştürebilir miyim?
Evet. Ters yön için eşlik eden JSON to TOML Dönüştürücü aracını kullanın veya bu aracın üstündeki Yönü değiştir düğmesine tıklayarak girişi ve çıkışı yerinde değiştirin. JSON to TOML'un, TOML to JSON'da olmayan birkaç kısıtlaması olduğunu unutmayın — üst düzeyin bir nesne olması gerekir ve null değerlerin TOML karşılığı yoktur — bunları JSON to TOML aracı sizin için açıklar ve ele alır.
TOML'u komut satırında JSON'a nasıl dönüştürürüm?
Popüler bir seçenek, Rust tabanlı 'toml' CLI'si veya Go aracı 'yj' (yj -tj, TOML okur ve JSON yazar). Python 3.11+ ile şunu çalıştırabilirsiniz: python3 -c "import tomllib, json, sys; print(json.dumps(tomllib.load(sys.stdin.buffer)))" < config.toml. Node.js ile: npx smol-toml (veya smol-toml kütüphanesini kullanan küçük bir betik). Hiçbir şey kurmadan tarayıcıda hızlı bir tek seferlik işlem için bu araç en hızlı yoldur.
TOML'u Python, Rust veya Node.js'te JSON'a nasıl dönüştürürüm?
Python 3.11+ içinde: import tomllib, json; data = tomllib.load(open('config.toml','rb')); json.dump(data, open('config.json','w')). Rust içinde: toml ve serde_json crate'lerini kullanın — let value: toml::Value = toml::from_str(&text)?; let json = serde_json::to_string_pretty(&value)?. Node.js içinde: import { parse } from 'smol-toml'; const data = parse(text); const json = JSON.stringify(data, null, 2) — bu, bu aracın kullandığı kütüphane ve yaklaşımın aynısıdır.
Dönüştürücü anahtar sırasını korur mu ve yorumlar ne olur?
Bir tablo içindeki anahtar sırası korunur: anahtarlar JSON çıktısında TOML'unuzda göründükleri sırayla görünür. Ancak yorumlar atılır — JSON'da yorum söz dizimi olmadığından TOML # yorumları dönüştürmeden sağ çıkamaz. Belgelemeyi korumanız gerekiyorsa, bunu JSON dostu bir alan olarak ekleyin veya orijinal TOML'u üretilen JSON'un yanında tutun.
TOML girişi için bir dosya boyutu sınırı var mı?
Kesin bir sınır yoktur, ancak 200KB'ın üzerindeki girişler canlı dönüştürmeden manuel moda geçer: bir Dönüştür düğmesi belirir ve dönüştürme yalnızca tıkladığınızda çalışarak tarayıcıyı yanıt verir tutar. Tipik yapılandırma dosyaları — büyük Cargo.toml çalışma alanları veya çok ortamlı dağıtım yapılandırmaları bile — 50 milisaniyenin çok altında dönüştürülür.