Конвертор от TOML в JSON
Преобразувайте TOML в JSON и JSON в TOML във вашия браузър. Поддържа таблици, масиви от таблици, дати и 64-битови цели числа. Нищо не се качва.
Как да конвертирате TOML в JSON
- Изберете посоката: TOML → JSON (по подразбиране) или JSON → TOML.
- Поставете данните си или щракнете върху Отвори файл, за да заредите файл
.tomlили.json(до 10 МБ). - За TOML → JSON изберете Отстъп (2 или 4 интервала) и решете дали да отметнете Големите цели числа като низове. За JSON → TOML оставете или махнете отметката от Пропусни стойностите null.
- Отметнете Подреди ключовете, ако искате всяка таблица да е подредена по азбучен ред.
- Резултатът се обновява, докато пишете; Конвертирай го изпълнява отново при поискване. Грешките показват реда и колоната на проблема.
- Копирайте или изтеглете резултата. Смени посоката премества резултата във входа, за да го конвертирате обратно.
TOML и JSON един до друг
TOML (Tom’s Obvious Minimal Language) е форматът за конфигурация зад Cargo.toml в Rust, pyproject.toml в Python, сайтовете с Hugo и Netlify и много инструменти за команден ред. Проектиран е да се чете и редактира от хора и се съпоставя пряко с JSON-подобно дърво от таблици (обекти), масиви и стойности.
[package]
name = "demo"
version = "0.1.0"
[[bin]]
name = "cli"
става
{"package": {"name": "demo", "version": "0.1.0"}, "bin": [{"name": "cli"}]}
- Заглавие
[table]става JSON обект, а ключове с точки катоa.b.c = 1стават вложени обекти. - Масив от таблици,
[[bin]], става JSON масив от обекти. - Вградените таблици
{ x = 1 }и масивите работят, както бихте очаквали. Коментарите се пропускат, защото JSON няма такива.
Къде двата формата се различават
Дати и час. TOML има четири вградени типа за дата и час; JSON няма нито един. Конверторът ги записва като низове по ISO 8601 и запазва вида им: дата и час със отместване остава 1979-05-27T07:32:00.000-08:00, локалната дата остава 1979-05-27, а локалният час остава 07:32:00.000. Дробните секунди се запазват до милисекунда. Конвертирането обратно в TOML дава обикновени низове, защото нищо в JSON не ги отбелязва като дати.
Цели числа. Целите числа в TOML са 64-битови със знак, от −9 223 372 036 854 775 808 до 9 223 372 036 854 775 807. Числата в JavaScript, използвани от повечето JSON анализатори, са точни само до 2^53 (9 007 199 254 740 991). По-големите цели числа от TOML се записват с всичките си цифри, което е валиден JSON, но програма, която ги чете като double, ще ги закръгли; отметнете Големите цели числа като низове, за да избегнете това. Цяло число извън 64-битовия обхват се отхвърля, както изисква спецификацията на TOML.
Специални числа с плаваща запетая. inf, -inf и nan нямат форма в JSON, затова се записват като низове "inf", "-inf" и "nan".
JSON → TOML. TOML документът винаги е таблица, затова JSON трябва да е обект на най-високо ниво. TOML няма null: по подразбиране стойностите null се пропускат и съобщение ви казва колко са; махнете отметката от Пропусни стойностите null, за да получите вместо това грешка с мястото на първата. JSON не прави разлика между 1 и 1.0, така че цели числа стават цели числа в TOML, а числата, твърде големи за 64 бита, стават числа с плаваща запетая. В съвременните браузъри големите цели числа във вашия JSON запазват точните си цифри.
Често задавани въпроси
Изпраща ли се конфигурацията ми някъде?
Не. Преобразуването се изпълнява изцяло във вашия браузър, така че API ключове или тайни във вашите конфигурационни файлове никога не напускат компютъра ви.
Защо редът на ключовете ми се промени в TOML резултата?
TOML изисква обикновените двойки ключ/стойност да са преди подтаблиците във всяка таблица, затова конверторът записва първо стойностите, после [таблиците], после [[масивите от таблици]]. Данните са същите.
Запазват ли се коментарите в TOML?
Не. JSON няма коментари, така че те се губят при преобразуването TOML → JSON и няма какво да се възстанови на връщане.
Коя версия на TOML се поддържа?
TOML 1.0, включително ключове с точки, вградени таблици, масиви от таблици, шестнадесетични, осмични и двоични цели числа и всичките четири типа за дата и час.
Защо датата ми е низ в JSON?
JSON няма тип за дата. Низовете по ISO 8601 са обичайната конвенция и повечето езици могат да ги анализират директно.
Сродни инструменти
- Конвертор от JSON в YAML Конвертирайте JSON в YAML и YAML в JSON във вашия браузър, с котви, merge ключове и файлове с много документи. Нищо не се качва.
- JSON форматиране и валидиране Безплатно форматиране и валидиране на JSON, което подрежда, минимизира и проверява JSON във вашия браузър, със синтактични грешки по ред и колона.
- Конвертор от JSON в XML Конвертирайте JSON в XML и XML в JSON във вашия браузър, с атрибути, повтарящи се елементи и CDATA. Нищо не се качва на сървър.