Konwersja JSON na CSV
Konwerter oczekuje tablicy obiektów JSON i zapisuje jeden wiersz CSV na każdy obiekt. Rekordy rzadko mają identyczne klucze, dlatego ten poradnik pokazuje, jak wybierane są kolumny i czym wypełniane są luki.
Przykład krok po kroku
[
{"id": 1, "name": "Smith, Jane", "tags": ["admin", "ops"]},
{"id": 2, "name": "Kim", "email": "[email protected]"},
{"id": 3, "name": "Lee", "email": null}
]id,name,tags,email 1,"Smith, Jane","admin,ops", 2,Kim,,[email protected] 3,Lee,,
Wiersz nagłówków zawiera wszystkie klucze w kolejności ich pierwszego wystąpienia: id, name, tags, a następnie email z drugiego obiektu. Smith nie ma pola email, a email u Lee ma wartość null, więc obie komórki są puste. Tablica tags jest zapisywana jako admin,ops i ujmowana w cudzysłowy, bo zawiera ogranicznik — tak samo jak "Smith, Jane".
Jak konwerter to obsługuje
- Dane wejściowe muszą być tablicą JSON, np. [{...}, {...}]; pojedynczy obiekt jest odrzucany.
- Kolumny to suma kluczy wszystkich obiektów, w kolejności pierwszego wystąpienia każdego klucza.
- Brakujący klucz lub wartość null daje pustą komórkę.
- Liczby i wartości logiczne są zapisywane jako zwykły tekst, na przykład 42 i true.
- Tablice prostych wartości są zapisywane jako ich elementy połączone przecinkami. Zagnieżdżone obiekty oraz tablice zawierające obiekty są zapisywane w komórce jako zwarty JSON, więc żadne dane nie giną; jeśli potrzebujesz osobnych kolumn, najpierw je spłaszcz (na przykład do address_city).
- Wartości zawierające ogranicznik, znak cudzysłowu lub podział wiersza są ujmowane w podwójne cudzysłowy, a cudzysłowy wewnątrz są podwajane.