Що таке конвертація JSON у CSV?
JSON (JavaScript Object Notation, RFC 8259) — це текстовий формат у вигляді дерева для структурованих даних; CSV (Comma-Separated Values, RFC 4180) — плаский табличний текстовий формат. Конвертація JSON у CSV розгортає це дерево в рядки та стовпці, щоб набір даних, що починав життя як відповідь API, відкривався в електронній таблиці без ручного переписування.
Як працює конвертація JSON у CSV?
Кожне перетворення виконується локально у вашому браузері. Основні кроки:
JSON.parseперевіряє введення і підтверджує, що це масив записів верхнього рівня. Чітка помилка з'являється, якщо дужки, коми або ключі в лапках неправильні.- Генератор виводить стовпці заголовка з ваших записів — або об'єднання всіх знайдених ключів, або лише ключі з першого запису, залежно від перемикача.
- Вкладені об'єкти вирівнюються до dot-ключів (
user.id,user.city) або серіалізуються як єдина JSON-клітинка, на ваш вибір. Масиви всередині об'єктів серіалізуються у JSON в обох режимах. - Кожна клітинка екранується за RFC 4180: будь-яке значення, що містить роздільник, подвійні лапки або перенесення рядка, загортається в лапки, а внутрішні лапки подвоюються. Рядки з'єднуються закінченнями
\r\n. - CSV з'являється в полі виводу лише для читання, а посилання для завантаження будує
Blobз типом MIMEtext/csv;charset=utf-8, щоб ви могли зберегти файл одним кліком.
Чому варто конвертувати JSON у CSV цим інструментом?
- Конфіденційність: кожен прохід розбору, вирівнювання та запису відбувається у вашому браузері. Дані ніколи не потрапляють на наші сервери.
- Коректність: генератор дотримується RFC 4180. Значення на кшталт
Bob, Jr.виходить як"Bob, Jr."— одна клітинка в лапках, а не два стовпці — і вбудовані переведення рядка або лапки залишаються цілими після конвертації. - Готовність до таблиць: вивід вставляється прямо в Excel або Google Sheets, зі стовпцями заголовка, вже виведеними з ваших ключів, тому перед використанням даних не потрібне ручне очищення.
- Гнучкість: вирівнюйте вкладені об'єкти до dot-ключів або серіалізуйте як одну клітинку, обирайте будь-який роздільник для не-коми CSV-діалектів і налаштовуйте джерело заголовків — усі ключі або лише перший запис.
Які поширені застосування конвертації JSON у CSV?
Вирівнювання JSON у CSV трапляється у роботі з даними та інструментами:
- Експорт даних: перетворення відповіді API у CSV-файл, який ваша фінансова, операційна або продуктова команда може відкрити в Excel чи Google Sheets без написання коду.
- Звітність: вставка результату JSON-запиту в таблицю для зведеної таблиці, діаграми або швидкого стовпця формул. Такий вид роботи дуже незручний на сирому JSON.
- Перегляд у таблиці: вирівнювання вкладеного JSON-конфігу (налаштування, прапорці функцій, A/B-варіанти) у CSV, щоб нетехнічні рецензенти могли читати та редагувати його клітинку за клітинкою.
Як виглядає приклад конвертації JSON у CSV?
Вставте [{"name":"Alice","age":30},{"name":"Bob, Jr.","age":25}], залиште роздільник як кому і натисніть КОНВЕРТУВАТИ. Ви отримаєте три рядки: заголовний рядок name,age, рядок даних Alice,30 і рядок "Bob, Jr.",25. Вбудована кома — саме те, що ламає наївне об'єднання; тут вона активує лапкування RFC 4180, зберігаючи клітинку цілою.
Чи цей конвертер JSON у CSV працює повністю у моєму браузері?
Так. Кожен прохід розбору, вирівнювання та запису виконується локально як JavaScript у вашій вкладці браузера. Інструмент взагалі не викликає fetch, XMLHttpRequest чи navigator.sendBeacon — ваші JSON-дані не потрапляють на наші сервери, сторонній конвертер чи будь-який аналітичний конвеєр. Інструмент також працює офлайн після завантаження сторінки, оскільки є статичним пакетом HTML/CSS/JS без залежності від runtime API.
Який максимальний розмір введення може обробити цей конвертер?
Конвертер буферизує все введення в пам'яті та виконується синхронно в основному потоці, тому практичні обмеження залежать від вашого пристрою. JSON-масив обсягом до приблизно 10 МБ (приблизно 100 000 типових записів) вирівнюється у CSV без помітної паузи на сучасному ноутбуці. Понад це UI може зависати під час роботи генератора. Потокова конвертація з використанням Web Worker та посегментного генератора запланована як подальше вдосконалення — наразі розбивайте дуже великі набори даних перед вставкою.
Як генератор обробляє значення з комами, лапками або переведеннями рядка?
За RFC 4180. Будь-яке значення, що містить активний роздільник, подвійні лапки, CR або LF, загортається в подвійні лапки, а внутрішні лапки подвоюються. Тому ім'я на кшталт Bob, Jr. стає єдиною клітинкою "Bob, Jr." і не розливається на два стовпці, а багаторядковий опис залишається в одній клітинці. Саме тут ламається наївний join(',').
Що відбувається з вкладеними JSON-об'єктами при конвертації у CSV?
Вкладені об'єкти обробляються відповідно до перемикача Вкладені об'єкти. У режимі Вирівняти (за замовчуванням) ключі з'єднуються через крапку — {"user":{"id":1,"city":"Paris"}} стає стовпцями user.id та user.city. У режимі Серіалізувати вкладений об'єкт серіалізується як єдина JSON-клітинка з лапкуванням RFC 4180, зберігаючи структуру для зворотного перетворення. Масиви всередині об'єктів серіалізуються у JSON в обох режимах.
Які роздільники може використовувати вивід CSV?
Чотири: кома (,, стандарт RFC 4180), крапка з комою (;, поширена в європейських локалях), табуляція (\t, діалект TSV) та вертикальна риска (|). Виберіть ту, яку очікує ваш інструмент. Генератор екранує будь-яку клітинку, що містить обраний роздільник, тому вибір ніколи не пошкоджує значення.
Цей конвертер JSON у CSV вирівнює ваш масив і генерує вивід, сумісний з RFC 4180, який можна прямо вставити у таблицю, звіт або код-рев'ю — не завантажуючи жодного байта. Потрібен зворотній напрямок? Конвертер CSV у JSON розбирає дані в іншому напрямку.