Дані · 2 хв читання ·
JSON у CSV без втрати жодного поля
Вкладені ключі, необов’язкові поля та коми всередині рядків: як 4Dev перетворює заплутаний JSON на CSV, готовий для таблиці.

Таблиця пласка, а JSON ні. Будь-яка конвертація JSON у CSV має вирішити, що робити з вкладеними об’єктами, масивами та ключами, які є лише в частини записів. Ось що саме робить конвертер 4Dev.
Кожен ключ отримує свою колонку
Рядок заголовків складається з ключів усіх об’єктів у порядку їхньої першої появи, а не лише з першого запису. Запис, у якому бракує ключа, отримує порожню клітинку, тому колонки не зсуваються, а необов’язкові поля не зникають.
[{"id":1,"name":"Ada"},
{"id":2,"name":"Alan","note":"optional"}]
id,name,note
1,Ada,
2,Alan,optional
Вкладені об’єкти стають колонками з підкресленням
Об’єкти розгортаються: їхні ключі з’єднуються через підкреслення, і {"address":{"city":"Lisbon"}} стає колонкою address_city. Масив простих значень потрапляє в одну клітинку ("admin, dev"), а масив об’єктів зберігається в клітинці як текст JSON, тож нічого не втрачається.
Коми й лапки екрануються автоматично
Будь-яке значення з комою, подвійними лапками або переносом рядка береться в подвійні лапки, а внутрішні лапки подвоюються. Це стандартне правило CSV, на яке розраховують Excel і Google Таблиці.
2,"Alan, T.","says ""hi"""