Конвертер INI в JSON
Преобразуйте конфигурацию INI в JSON и JSON обратно в INI в вашем браузере. Секции, комментарии и глобальные ключи — всё обрабатывается. Ваши данные остаются локально.
Конвертер INI в JSON работает целиком в вашем браузере. Вставленная конфигурация INI и JSON разбирается локально и никогда не покидает ваше устройство и не загружается в ArrayKit.
Открыть форматировщик JSON
Об инструменте INI в JSON
Конвертер INI в JSON читает классический файл конфигурации INI и превращает его в чистый структурированный JSON, а затем преобразует JSON прямо обратно в INI. Он понимает заголовки [section], записи key=value, глобальные ключи без секции на верхнем уровне и строки комментариев, начинающиеся с ';' или '#', которые он тихо пропускает. Числа и логические значения по умолчанию приводятся к типам, так что port=5432 становится настоящим числом, а enabled=true становится настоящим логическим значением, или вы можете сохранить каждое значение как строку. Идя в обратную сторону, скаляры верхнего уровня становятся глобальными ключами, а вложенные объекты JSON становятся именованными [секциями]. Это удобно, когда вы переносите конфигурацию устаревших инструментов, подключаете настройки INI в конвейер на основе JSON или сравниваете две конфигурации в общем виде. Всё работает на вашем устройстве — ваша конфигурация никогда не покидает браузер.
Возможности
- Двустороннее преобразование: INI в JSON и JSON обратно в INI
- Разбирает заголовки [section] во вложенные объекты JSON
- Сохраняет ключи без секции как глобальные записи JSON верхнего уровня
- Автоматически пропускает строки комментариев ';' и '#'
- Необязательное приведение типов превращает числа и логические значения в настоящие значения JSON
- Объекты JSON становятся именованными [секциями]; скаляры становятся глобальными ключами
- Понятные ошибки с номерами строк для незакрытых секций или искажённых строк
- Работает целиком в вашем браузере, ничего не загружается
Как использовать INI в JSON
- Выберите направление INI → JSON (или переключитесь на JSON → INI)
- Вставьте вашу конфигурацию INI или JSON в поле ввода
- Включите «Приводить типы», если хотите числа и логические значения вместо строк
- Скопируйте преобразованный вывод или скачайте его как файл .json или .ini
Пример
Ввод
name = ArrayKit
[database]
host = localhost
port = 5432
enabled = true
Результат
{
"name": "ArrayKit",
"database": {
"host": "localhost",
"port": 5432,
"enabled": true
}
}
Глобальный ключ плюс секция [database] становятся полем верхнего уровня и вложенным объектом.
Частые ошибки и устранение неполадок
- Строка сообщает 'Expected "key = value"'. — Каждая строка, не являющаяся комментарием или секцией, должна содержать '=' (или ':'). Добавьте разделитель или поставьте перед строкой ';', чтобы сделать её комментарием.
- 'Unclosed section header' на строке [section]. — Добавьте недостающую ']', чтобы заголовок читался как [database]. Имена секций не могут занимать несколько строк.
- port становится строкой "5432" вместо числа. — Включите «Приводить типы», чтобы голые числовые и значения true/false разбирались как настоящие числа и логические значения JSON.
- JSON → INI сообщает, что ему нужен объект на верхнем уровне. — У INI нет массива верхнего уровня, поэтому оберните ваши данные в объект. Массив или примитив верхнего уровня нельзя отобразить в секции и ключи.
Часто задаваемые вопросы
- Как конвертер отображает секции INI в JSON?
- Каждый заголовок [section] становится вложенным объектом JSON с ключом по имени секции, а строки key=value под ним становятся полями этого объекта. Дублирующиеся заголовки с одинаковым именем объединяются в один объект.
- Что происходит с ключами, которые появляются до любой [section]?
- Ключи, записанные до первого заголовка секции, являются глобальными. Они помещаются на верхнем уровне объекта JSON, рядом с объектами секций, так что ничего не теряется.
- Сохраняются ли комментарии ';' и '#' в выводе JSON?
- Нет. Строки, начинающиеся с ';' или '#', трактуются как комментарии на всю строку и пропускаются при преобразовании INI → JSON, поэтому они никогда не появляются в JSON. Встроенный текст после значения сохраняется как часть этого значения.
- Как JSON → INI решает, что становится секцией?
- Скалярные значения верхнего уровня становятся глобальными строками key=value, выводимыми первыми, а каждый вложенный объект верхнего уровня становится именованной [секцией]. Вложенные массивы или более глубокие объекты записываются как значение в кавычках, закодированное в JSON.
- Можно ли запретить конвертеру превращать значения в числа или логические значения?
- Да. Выключите «Приводить типы», и каждое значение INI сохраняется как строка, так что port=5432 остаётся "5432", а enabled=true остаётся "true" в JSON.
- Загружается ли моя конфигурация INI или JSON для преобразования?
- Нет. Конвертер INI в JSON разбирает и пересобирает всё в вашем браузере с помощью локального JavaScript. Вставленная конфигурация никогда не покидает ваше устройство и не отправляется в ArrayKit.
Связанные инструменты
Все инструменты ArrayKit