tigtools

Конвертер CSV у JSON

Вставте CSV або відкрийте файл, щоб отримати масив JSON з об’єктів або масивів. Обробка відбувається у браузері, тож дані не залишають ваш пристрій.

Працює у вашому браузері Без реєстрації

Формат результату

Як користуватися

  1. Вставте текст CSV, відкрийте файл .csv або .tsv чи натисніть «Спробувати приклад».
  2. Залиште параметр «Визначати автоматично» або виберіть роздільник самостійно та вкажіть, чи містить перший рядок назви стовпців.
  3. За бажанням увімкніть визначення чисел, логічних значень і null, а також виберіть формат результату: об’єкти чи масиви.
  4. Скопіюйте JSON або завантажте його як файл .json.

Як це працює

Парсер відповідає RFC 4180 — специфікації CSV: поля можна брати в подвійні лапки, поле в лапках може містити роздільник і переноси рядків, а дві подвійні лапки всередині такого поля позначають одну лапку. Переноси рядків можуть бути CRLF (Windows), LF (macOS, Linux) або CR, а фінальний перенос не створює порожнього запису. Повністю порожні рядки пропускаються. На початку файлу видаляється маркер порядку байтів, який часто додає Excel. Якщо поле в лапках не закрите, з’явиться помилка із зазначенням рядка, у якому воно починається: спроба вгадати могла б непомітно об’єднати решту файлу в одну клітинку.

Автоматичне визначення перевіряє кому, крапку з комою, табуляцію та вертикальну риску в перших рядках і вибирає роздільник, який дає однакову кількість стовпців. Якщо є рядок заголовків, кожен запис перетворюється на об’єкт із ключами — назвами стовпців; порожні назви замінюються на column_1, column_2… а до повторюваних додається суфікс, наприклад id_2. Якщо в рядку менше полів, ніж у заголовку, відсутні значення будуть порожніми; для зайвих полів створюються додаткові назви стовпців.

За замовчуванням усі значення залишаються рядками — це безпечний варіант: поштові індекси на кшталт 01234, номери телефонів та ідентифікатори зберігають початкові нулі. Якщо ввімкнути визначення типів, числа, записані точно у форматі чисел JSON, стають числами (але не 007, 1,5 чи цілі числа, більші за 2^53), true і false у будь-якому регістрі стають логічними значеннями, а null або порожня клітинка — значенням null. Дати залишаються текстом.

Приклади

Експорт із таблиці

id,name,price\n1,Desk,149.90 перетворюється на [{"id":"1","name":"Desk","price":"149.90"}]. Якщо ввімкнути визначення типів, результат буде таким: {"id":1,"name":"Desk","price":149.9}.

Файли Excel для Європи

У файлі, збереженому в Excel у Німеччині, як роздільник використовуються крапки з комою: Name;Preis\nTisch;149,90. Автоматично визначається крапка з комою, а 149,90 залишається рядком "149,90", оскільки це не число JSON.

Клітинки з переносами рядків

Адреса, записана в клітинці як "221B Baker Street London" (у лапках, на двох рядках), залишається одним значенням — "221B Baker Street\nLondon", а не починає новий рядок.

Поширені запитання

Чому числа в JSON перетворилися на рядки?

У CSV немає типів даних, тому за замовчуванням кожне значення зберігається як текст без змін. Увімкніть «Визначати числа, true/false і null», щоб перетворювати значення, схожі на числа. Початкові нулі та десяткові коми залишаються в тексті, щоб уникнути змін даних.

Що буде, якщо в рядку більше або менше стовпців, ніж у заголовку?

Відсутні значення стають порожніми рядками (або null, якщо ввімкнено визначення типів). Зайві значення зберігаються під додатковими ключами з назвами column_N, тож жодні дані не втрачаються.

Чи можна відкрити файли Excel .xlsx?

Ні, лише текстові файли CSV і TSV. В Excel або Google Sheets спершу виберіть Файл › Зберегти як / Завантажити › CSV, а потім відкрийте цей файл тут.

Який розмір файлу можна перетворити?

Файли розміром у кілька мегабайтів перетворюються за мить на настільному комп’ютері. Обмеження залежить від обсягу пам’яті вашого пристрою, адже весь файл і результат JSON зберігаються у вкладці браузера.

Конфіденційність

Ваш CSV-файл зчитується та перетворюється лише у браузері. Відкриті файли не завантажуються на сервер, а дані не зберігаються й не надсилаються в аналітичні системи.