← speedor.net

Конвертеры данных

Бесплатные конвертеры форматов данных: CSV ↔ JSON, JSON ↔ YAML и JSON ↔ XML. Мгновенно, приватно, прямо в браузере.

Данные редко остаются в одном формате. Отчёт приходит как таблица, API ожидает JSON, пайплайн деплоя хочет YAML, а где-то в глубине устаревший сервис всё ещё говорит на XML. Большая часть повседневного трения при работе с данными — не сами данные, а необходимость привести их из той формы, что есть, в ту, которую требует следующий инструмент. Именно этим и занимается конвертер данных: берёт структурированный текст в одной нотации и выдаёт его в другой, не теряя смысл по пути.

Конвертация данных между CSV, JSON, YAML и XML

Данные редко остаются в одном формате. Отчёт приходит как таблица, API ожидает JSON, пайплайн деплоя хочет YAML, а где-то в глубине устаревший сервис всё ещё говорит на XML. Большая часть повседневного трения при работе с данными — не сами данные, а необходимость привести их из той формы, что есть, в ту, которую требует следующий инструмент. Именно этим и занимается конвертер данных: берёт структурированный текст в одной нотации и выдаёт его в другой, не теряя смысл по пути.

Конвертеры Speedor работают полностью в браузере. Вставляете, нажимаете, копируете результат. Ничего не загружается, ничего не логируется, ничего не покидает вашу машину. Для тех, кто хоть раз задумывался, прежде чем бросить экспорт клиентов на случайный сайт, — именно в этом локальном подходе и есть смысл.

Для чего реально предназначен каждый формат

Прежде чем переключаться между форматами, стоит понять, зачем они существуют — каждый создан для своей задачи.

CSV — это плоская сетка с запятыми, которую любят таблицы. По природе своей табличный: строки и столбцы, без вложенности. Открывается в Excel, Google Sheets или Numbers без вопросов. Минус: в CSV нет понятия типов данных. Значение 007 может быть строкой, числом или почтовым индексом — CSV не скажет.

JSON — общий язык современного веба. Почти каждый API говорит на нём. JSON поддерживает вложенность, массивы и несколько реальных типов (строки, числа, булевы значения, null), что делает его куда выразительнее плоской таблицы. Компактный, машинно-ориентированный и поддерживается везде.

YAML — более читаемый кузен JSON. Использует отступы вместо скобок, поддерживает комментарии и обычно является форматом выбора для конфигурационных файлов, Docker Compose, манифестов Kubernetes и CI-пайплайнов. Когда человек должен редактировать что-то вручную, YAML как правило добрее к глазу.

XML — ветеран. Многословный, с тяжёлыми тегами, но глубоко укоренившийся в корпоративных системах, SOAP-сервисах, финансовых протоколах и документальных стандартах вроде RSS. В новых проектах встречается реже, но когда он нужен — он действительно нужен.

Абстрактные светящиеся блоки данных, трансформирующихся из одной структурированной формы в другую на тёмно-индиговом и голубом фоне
Одни и те же данные, переформулированные: одна структура перетекает в другую, не теряя смысла.

Где конвертация реально происходит

Конкретные сценарии легко представить, стоит начать смотреть. Скажем, маркетинг передал вам таблицу из 4000 контактов, а API регистрации принимает только JSON-массив. Экспортируете лист в CSV, прогоняете через CSV в JSON — и у вас готовый payload для POST-запроса. Никаких вспомогательных скриптов, никакого pandas, никакого ожидания разработчика.

Или вы получили обратно кусок JSON от того же API и хотите вставить его в конфигурационный файл, который сервис читает при запуске. Конвертируйте через JSON в YAML — получите чистый, документируемый текст, который аккуратно ляжет в репозиторий. В обратную сторону тоже работает, когда инструмент принимает только JSON, а конфиг живёт в YAML.

И всегда найдётся интеграция, которую никто не любит: партнёрская система, которая принимает только XML. Собираете payload в JSON, потому что так думает ваше приложение, — и конвертируете в XML на границе. Форма остаётся той же, меняется только синтаксис.

Подводные камни, о которых стоит знать

Конвертация форматов не всегда безопасная, и притворяться иначе ведёт к ошибкам. Несколько вещей стоит держать в уме:

CSV забывает типы. Поскольку каждая ячейка — просто текст, числа, булевы значения и даты выходят строками, если конвертер не угадывает за вас. Если true должен быть булевым, а не словом «true» — проверьте вывод перед отправкой.

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

XML и JSON не отображаются друг на друга чисто. В JSON есть массивы; в XML — повторяющиеся элементы. У JSON нет атрибутов; в XML они везде. Большинство конвертеров выбирают разумное соглашение, но если ваш XML активно использует атрибуты, получившийся JSON будет выглядеть немного иначе, чем написанный вручную. Это ожидаемо, не ошибка.

Глубина вложенности важна. CSV плоский, поэтому глубоко вложенный JSON не всегда можно свернуть в столбцы без сглаживания ключей (например, address.city). В обратную сторону: плоский CSV становится плоским массивом, никогда деревом.

Строки светящейся таблицы данных, трансформирующиеся в вложенное дерево скобок на тёмно-синем, голубом и золотом фоне
Плоские строки раскрываются в вложенное дерево: те же записи, более богатая структура.

Почему важен локальный подход

Многие данные, которые вы захотите конвертировать, не ваши для разглашения. Записи пользователей, внутренние конфиги, API-ключи, зарытые в ответе, финансовые строки. Немало онлайн-конвертеров тихо отправляют вставленное на сервер для обработки. Speedor — нет. Логика конвертации работает в вашей вкладке браузера, данные никогда не пересекают сеть, и закрыть вкладку — единственная нужная «очистка». Это ещё и быстрее: нет цикла загрузки-скачивания, и работает офлайн после загрузки страницы. Бесплатно, без регистрации, без квот.

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

Мои данные куда-то загружаются при конвертации?

Нет. Каждая конвертация выполняется локально в браузере с помощью JavaScript. Ваши данные никогда не покидают устройство и не отправляются на сервер, поэтому инструменты работают даже без интернета.

Можно ли конвертировать CSV в JSON без написания кода?

Да. Вставьте CSV в конвертер, нажмите кнопку — и скопируйте полученный JSON-массив. Первая строка считается заголовками столбцов, которые становятся ключами объектов.

Почему в конвертированном JSON числа выглядят как строки?

В CSV нет понятия типов данных, поэтому каждое значение изначально является текстом. Некоторые конвертеры пытаются автоматически определить числа и булевы значения, но при сомнении оставляют значения строками, чтобы не испортить почтовые индексы или ID с ведущими нулями.

В чём разница между JSON и YAML?

Они представляют одни и те же виды данных, но YAML использует отступы вместо фигурных скобок и скобок, допускает комментарии и в целом удобнее для чтения и редактирования. JSON компактнее и является стандартом для большинства веб-API.

Конвертация между форматами всегда без потерь?

Обычно, но не всегда. JSON, YAML и XML в большинстве случаев хорошо отображаются друг на друга. Сложнее всего с CSV — он плоский и без типов, — и с XML, который обрабатывает атрибуты и повторяющиеся элементы иначе, чем JSON-массивы. Всегда проверяйте вывод для важных данных.

Работают ли конвертеры с большими файлами?

С большинством повседневных файлов справляются комфортно, поскольку работа выполняется на вашей машине. Производительность зависит от вашего устройства, а не от сервера, поэтому очень большие файлы ограничены только памятью браузера.