IT Market
Инструменты/Код/Документы/TXT в JSON массив или объект онлайн — конвертер
TXT → JSON

Конвертируйте текст в JSON Array/Object

Коротко об инструменте

TXT в JSON

Список, присланный в мессенджере по одному пункту на строку, редко приходит в пригодном для кода виде. Здесь он становится JSON: переключатель «Режим» с вариантами «Массив» и «Объект (ключ:значение)» решает, получится ли массив строк или объект из пар «ключ: значение». Пустые строки в результат не попадают. Считает всё браузер, поэтому внутренние списки разбираются спокойно: сиды базы, файлы локализации, фикстуры для тестов. Смотрите также: проверить собранный массив на ошибки, перевести список строк в таблицу CSV, разобрать в JSON файл с разделителями.

Как пользоваться

  1. Вставьте текст в поле «Исходный текст» — по одному элементу на строку, как показано в подсказке Line 1 / Line 2 / Line 3.
  2. Выберите в блоке «Режим» вариант «Массив», если нужен обычный список строк в квадратных скобках.
  3. Выберите «Объект (ключ:значение)», если каждая строка выглядит как «ключ: значение» — по первому двоеточию она и разделится.
  4. Нажмите «Конвертировать» — результат появится в поле «JSON на выходе» с отступами.
  5. Скопируйте его кнопкой «Копировать» в файл локализации, сид базы или набор тестовых данных.

Вопросы и ответы

Что будет со строкой без двоеточия в режиме Object?

Пары из неё не получится: разделять нечего, поэтому такая строка либо выпадет из результата, либо даст ключ с пустым значением. Перед конвертацией пробегитесь глазами по списку и допишите двоеточия там, где их не хватает. Если строки принципиально без ключей, вам нужен режим «Массив» — он сохранит каждую строку как элемент массива.

А если двоеточий в строке несколько, например во времени 10:30?

Деление идёт по первому двоеточию: всё до него становится ключом, весь остаток — значением. Строка «start: 10:30» превратится в ключ start и значение 10:30, что обычно и требуется. Обратная ситуация — двоеточие внутри ключа — сломает разбор, поэтому в ключах его лучше не использовать.

Числа останутся числами или станут строками?

Каждая строка переносится как текст, поэтому 42 в результате будет "42" в кавычках. Это осознанный компромисс: автоматическое приведение типов испортило бы артикулы с ведущими нулями, номера телефонов и версии вида 1.10. Если типы нужны, снимите кавычки в редакторе после конвертации либо приведите значения в коде при загрузке.

Что происходит с пустыми строками и пробелами по краям?

Пустые строки между блоками списка в результат не попадают — это удобно, когда текст скопирован из документа с отступами. А вот пробелы и табуляции по краям пункта могут сохраниться внутри значения и позже дать неочевидное несовпадение при сравнении строк. Проверьте выравнивание в готовом JSON, прежде чем класть его в код.

Как быть, если строки на самом деле разделены запятыми или точкой с запятой?

Это уже табличные данные, и для них есть отдельная страница «CSV в JSON»: она различает заголовок и разделитель и собирает массив объектов, а не плоский список. Здесь же разделителем всегда служит перевод строки. Быстрый обходной путь — заменить запятые на переносы в любом редакторе и вернуться сюда.

Останется ли вставленный список только у меня?

Да: разбивку по строкам и сборку JSON делает скрипт открытой страницы, содержимое поля не отправляется на сервер и нигде не сохраняется. Обновление вкладки очищает оба поля. Поэтому черновики локализации и внутренние перечни можно приводить в порядок здесь, не выкладывая их в сторонний сервис.

Примеры

Список городов для выпадающего меню
До: Kazan Omsk Sochi
После: [ "Kazan", "Omsk", "Sochi" ]
Черновик файла локализации
До: title: Korzina empty: Korzina pusta submit: Oformit zakaz
После: { "title": "Korzina", "empty": "Korzina pusta", "submit": "Oformit zakaz" }