Як користуватися
- Вставте текст CSV, відкрийте файл .csv або .tsv чи натисніть «Спробувати приклад».
- Залиште параметр «Визначати автоматично» або виберіть роздільник самостійно та вкажіть, чи містить перший рядок назви стовпців.
- За бажанням увімкніть визначення чисел, логічних значень і null, а також виберіть формат результату: об’єкти чи масиви.
- Скопіюйте 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-файл зчитується та перетворюється лише у браузері. Відкриті файли не завантажуються на сервер, а дані не зберігаються й не надсилаються в аналітичні системи.