Как конвертировать CSV в JSON
CSV (значения, разделённые запятыми) — это самый простой формат для табличных данных — каждая электронная таблица может его экспортировать. JSON (JavaScript Object Notation) — это стандартный формат для веб-API и современных приложений. Конвертация между двумя — одна из самых распространённых задач с данными в разработке.
Когда нужно конвертировать CSV в JSON
- Загрузка данных в веб-приложение — большинство JavaScript-фреймворков работают нативно с JSON, а не с CSV
- Полезные нагрузки API — если у вас есть данные в электронной таблице, которые должны идти в API-эндпоинт, нужен JSON
- Импорты в базу данных — многие NoSQL-базы (MongoDB, Firebase) принимают JSON напрямую
- Файлы конфигурации — превратите электронную таблицу с настройками в JSON-файл конфигурации
- Анализ данных — конвертируйте экспортированные данные в формат, который ваши инструменты могут обработать
Как CSV становится JSON
CSV-файл:
name,age,city
Alice,30,New York
Bob,25,London
Становится JSON-массивом объектов:
[
{"name": "Alice", "age": "30", "city": "New York"},
{"name": "Bob", "age": "25", "city": "London"}
]
Первая строка (заголовки) становится ключами. Каждая последующая строка становится объектом.
Как конвертировать
- Вставьте ваши CSV-данные — введите данные, разделённые запятыми, со строкой заголовка.
- Выберите ваш разделитель — запятая, точка с запятой, табуляция или вертикальная черта. Инструмент автоматически определяет в большинстве случаев.
- Скопируйте или скачайте — просмотрите JSON-вывод и скопируйте его в буфер обмена или скачайте его как файл
.json.
Обработка хитрых CSV
Значения в кавычках — когда значение содержит символ-разделитель (например, адрес с запятой), оно должно быть окружено двойными кавычками: "New York, NY". Хорошие конвертеры обрабатывают это правильно.
Пустые значения — пустые ячейки становятся пустыми строками в JSON ("field": ""). Если вы хотите null, вам придётся постобрабатывать вывод.
Числовые значения — у CSV нет типов. Всё — текст. JSON-вывод будет иметь числа в виде строк ("30", не 30). Если вашему приложению нужны настоящие числа, разберите их после конвертации.
Переводы строк в значениях — некоторые CSV содержат многострочные значения (заключённые в кавычки). Не все конвертеры обрабатывают их — тестируйте с вашими данными.
Советы
- Проверьте ваши заголовки — первая строка должна содержать чистые и уникальные имена столбцов. Пробелы, специальные символы или дублированные заголовки создадут беспорядочные JSON-ключи.
- Проверьте разделитель — европейские CSV часто используют точку с запятой, а не запятую (потому что запятая служит десятичным разделителем во многих странах). Если конвертация кажется неправильной, попробуйте другой разделитель.
- Отформатируйте вывод — после конвертации пропустите JSON через форматтер, чтобы сделать его читаемым перед использованием в вашем проекте.
- Проверяйте выборочно — сравните несколько строк JSON-вывода с исходным CSV, чтобы убедиться, что сопоставление правильное, особенно для файлов с многими столбцами.
Часто задаваемые вопросы
Что происходит со строкой заголовка?
Первая строка используется как ключи для JSON-объектов. Каждая последующая строка становится объектом с этими ключами. Например, заголовок «name,age» со строкой «Alice,30» становится {"name":"Alice","age":"30"}.
Какие разделители поддерживаются?
Запятая, точка с запятой, табуляция и вертикальная черта все поддерживаются. Инструмент может автоматически определить разделитель, или вы можете выбрать его вручную.
Обрабатывает ли он запятые внутри значений?
Да. Значения, окружённые двойными кавычками (например, «New York, NY»), обрабатываются правильно — запятая внутри кавычек считается частью значения, а не разделителем.
Отправляются ли мои данные на сервер?
Нет. Вся конвертация происходит в вашем браузере. Ваши данные никогда не покидают ваше устройство.