Конвертер TOML в JSON

Конвертируйте конфигурационные файлы TOML в JSON — поддержка таблиц, массивов таблиц и всех типов данных TOML

Поделиться:

Конвертер TOML в JSON


                    

Зачем конвертировать между TOML и JSON?

TOML создан для человекочитаемых конфигурационных файлов (Cargo.toml Rust, pyproject.toml Python, config.toml Hugo), тогда как JSON является стандартом для веб-API и JavaScript-инструментов. Когда нужно отправить конфигурацию TOML в JSON-API, интегрировать JavaScript-инструменты или обмениваться данными между разными экосистемами, этот инструмент немедленно устраняет разрыв.

🔤

Полная конвертация типов

Строки, целые числа, числа с плавающей точкой, булевы значения и даты TOML — все корректно конвертируются в их эквиваленты JSON

📋

Таблицы и массивы таблиц

Корректно обрабатывает синтаксис [таблица], [[массивы таблиц]] и инлайн-таблиц {ключ = значение}

Форматированный вывод JSON

Вывод отображается с отступами для читаемости — не сжатый JSON в одну строку

Как конвертировать TOML в JSON

1

Вставьте TOML-конфигурацию

Вставьте содержимое Cargo.toml, pyproject.toml или любого другого TOML-конфигурационного файла

2

Автоматическая конвертация

Инструмент разбирает и конвертирует структуру TOML в эквивалентный JSON немедленно

3

Скопируйте JSON

Скопируйте сгенерированный JSON для использования в вызовах API или других инструментах, принимающих JSON

Сценарии использования TOML в JSON

🦀

Анализ Cargo.toml

Конвертируйте Cargo.toml в JSON для CI-скриптов, анализирующих зависимости или извлекающих информацию о версии

📝

Конфигурация Hugo

Конвертируйте config.toml Hugo в JSON для интеграции с другими инструментами или источниками данных

🔌

Отправка данных в API

Конвертируйте параметры формата TOML в JSON для отправки в конечные точки REST API или GraphQL

🔍

Изучение форматов

Понимайте соответствие структуры TOML→JSON, чтобы узнать, как соотносятся два формата

Лучшие практики TOML

✓ Используйте точечную нотацию для вложенных таблиц

TOML поддерживает [server.database] как сокращение для вложенных таблиц, делая конфигурации более читаемыми, чем вложенные ключи JSON.

✓ Используйте литеральные строки для путей

Литеральные строки в одинарных кавычках типа 'C:\Users\path' не обрабатывают escape-последовательности — идеально для путей Windows и regex-паттернов.

✓ Используйте комментарии обильно

Главное преимущество TOML над JSON — поддержка комментариев. Документируйте каждый параметр конфигурации комментариями # для поддерживаемости.

✓ Учитывайте конвертацию типа DateTime

Родные даты RFC 3339 TOML (2024-01-15T10:30:00Z) становятся строками в JSON. Код, использующий JSON, должен заново разбирать их как объекты дат.

❓ Часто задаваемые вопросы

Какие преимущества у TOML перед YAML и JSON?

TOML проще YAML (нет структуры на основе отступов), читаемее JSON (поддерживает комментарии) и имеет явные типы (целые числа, числа с плавающей точкой, даты отдельны). Лучший выбор для конфигурационных файлов приложений, где важна читаемость.

Что такое [[массивы таблиц]] в TOML?

[[servers]] определяет массив объектов с именем 'servers'. Каждое вхождение [[servers]] создаёт новый объект в массиве. Ключи ниже принадлежат этому объекту. Эквивалент JSON: {"servers": [{...}, {...}]}.

Какие важные инструменты используют TOML?

Rust (Cargo.toml), современная упаковка Python (pyproject.toml с pip/poetry), генератор статических сайтов Hugo, Gitea, Lighthouse CI и многие Go-инструменты используют TOML. Его принятие растёт в DevOps-экосистеме.

Сохраняются ли комментарии TOML в выводе JSON?

Нет. JSON не имеет синтаксиса комментариев, поэтому комментарии # TOML не могут быть представлены в выводе JSON. Если комментарии документируют важные решения, сохраняйте их в отдельном README или используйте ключи _comment в JSON.