Конвертер CSV в JSON
Преобразуйте CSV со строкой заголовков в JSON-массив объектов, готовый для API, скриптов и тестовых фикстур.
JSON
Преобразование строк CSV в объекты JSON
CSV-выгрузки из Excel, Google Таблиц или базы данных легко получить, но неудобно использовать в коде. Этот конвертер читает первую строку как названия столбцов и превращает каждую следующую строку в JSON-объект с этими ключами, так что вы получаете массив, который можно отправить в API или загрузить в скрипт. Поля в кавычках, содержащие запятые, кавычки или переносы строк, разбираются корректно, пустые строки пропускаются, а разделитель определяется автоматически, поэтому файлы с точкой с запятой и табуляцией в качестве разделителя тоже поддерживаются.
Как пользоваться
- Убедитесь, что первая строка вашего CSV содержит названия столбцов.
- Вставьте CSV; JSON-массив появится в редакторе вывода, а некорректные строки будут указаны под полем ввода.
- Скопируйте JSON или нажмите «Поменять», чтобы преобразовать его обратно в CSV.
Часто задаваемые вопросы
- Почему числа и булевы значения в результате являются строками?
- В CSV нет типов данных, поэтому каждая ячейка сохраняется как текст. Это позволяет не потерять данные, например ведущие нули в идентификаторах или номерах телефонов. При необходимости преобразуйте нужные поля в числа в своём коде.
- Работает ли конвертер с файлами, где разделитель — точка с запятой или табуляция?
- Да. Разделитель определяется по содержимому, поэтому файлы, экспортированные с точкой с запятой (как это делает Excel во многих европейских локалях) или с табуляцией, конвертируются без дополнительных настроек.
- Что, если в моём CSV нет строки заголовков?
- Первая строка всегда используется как ключи. Перед конвертацией добавьте в начало строку с названиями столбцов, иначе ключами станет первая строка данных.
Пример: CSV в JSON
Ввод CSV
id,product,price,in_stock
1,Keyboard,49.99,yes
2,Mouse,19.99,no
3,"Monitor, 27""",229.00,yes
Вывод JSON
[
{
"id": "1",
"product": "Keyboard",
"price": "49.99",
"in_stock": "yes"
},
{
"id": "2",
"product": "Mouse",
"price": "19.99",
"in_stock": "no"
},
{
"id": "3",
"product": "Monitor, 27\"",
"price": "229.00",
"in_stock": "yes"
}
]