JSON na CSV

Wklej tablicę JSON z obiektami (kształt, jaki większość API zwraca dla list), a konwerter zamieni każdy obiekt w wiersz CSV. Automatycznie wykrywa nagłówki kolumn z kluczy, spłaszcza zagnieżdżone obiekty do kolumn w notacji z kropką i obsługuje tablice, łącząc je separatorem albo tworząc jedną kolumnę na indeks.

Jak przekształcić JSON na CSV

  1. 1

    Wklej tablicę JSON

    Zwykle `[{...}, {...}, ...]`. Jeśli masz opakowany ładunek typu `{"data": [...]}`, podaj wewnętrzną tablicę.

  2. 2

    Wybierz separator i styl cytowania

    Przecinek, tabulator, średnik lub kreska pionowa. Zdecyduj, czy cytować zawsze, czy tylko w razie potrzeby.

  3. 3

    Wybierz obsługę zagnieżdżonych obiektów

    Spłaszcz do `user.name`, `user.email` albo serializuj jako ciągi JSON w jednej kolumnie.

  4. 4

    Pobierz CSV

    Zapisz CSV albo skopiuj go. Nagłówki trafiają do pierwszego wiersza, chyba że je wyłączysz.

Przykład

Wejście:

[
  { "id": 1, "user": { "name": "Alice", "email": "a@a.com" }, "tags": ["admin"] },
  { "id": 2, "user": { "name": "Bob",   "email": "b@b.com" }, "tags": ["user", "beta"] }
]

Wynik (spłaszcz zagnieżdżone, połącz tablice):

id,user.name,user.email,tags
1,Alice,a@a.com,admin
2,Bob,b@b.com,"user,beta"

Wybór separatora

Separator Użyj, gdy
, (przecinek) Domyślny, działa z Excelem i Arkuszami Google
; (średnik) Europejskie ustawienia Excela, które traktują , jako część dziesiętną
\t (tabulator) Czyste wklejenie do Arkuszy Google, unika problemów z cytowaniem
` ` (kreska pionowa)

Zasady cytowania

Pole musi być ujęte w cudzysłów, gdy zawiera:

  • separator
  • podwójny cudzysłów (który jest cytowany przez podwojenie: " -> "")
  • znak nowego wiersza

„Cytuj zawsze“ jest bezpieczniejsze dla zgodności między narzędziami; „cytuj tylko w razie potrzeby“ ułatwia ręczne czytanie pliku.

Obsługa zagnieżdżonych obiektów

  • Spłaszcz: { user: { name: "A" } } staje się kolumną user.name. Głębokie ścieżki stają się a.b.c.d.
  • Ciąg JSON: zagnieżdżony obiekt pozostaje jako jednokolumnowa wartość JSON: "{\"name\":\"A\"}". Przydatne, gdy narzędzia w dalszym ciągu potrafią ją sparsować.
  • Konwersja na ciąg: łączy separatorem, tracąc strukturę.

Obsługa tablic

  • Połącz: ["a", "b"] staje się "a,b" w jednej kolumnie.
  • Kolumny indeksowane: tworzy tags.0, tags.1, tags.2, działa tylko, gdy długość tablicy jest spójna.
  • Tylko pierwszy element: bierze tags[0] i ignoruje resztę.

Częste błędy

  • Nierówne klucze między obiektami. Jeśli jeden obiekt ma phone, a inny nie, CSV dostaje kolumnę phone z pustymi komórkami dla brakujących wierszy. Zawsze waliduj, czy zestaw kluczy jest spójny.
  • Zapomnienie o BOM dla Excela. Excel na Windowsie czyta CSV-y UTF-8 bez BOM jako Latin-1 i przekręca znaki z akcentami. Narzędzie oferuje przełącznik „dodaj prefiks BOM UTF-8“ na ten przypadek.
  • Osadzanie znaków nowego wiersza w wartościach. Legalne w CSV zgodnym z RFC 4180, ale niektóre importery się na tym wykładają. Jeśli Twój cel jest delikatny, zastąp \n spacją lub tokenem \\n.
  • Używanie Excela jako formatu pośredniego. Excel po cichu zamienia 007 na 7, ucina długie liczby i psuje wiodące zera w identyfikatorach. Dla integralności danych użyj CSV z porządnym parserem.

Najczęściej zadawane pytania

Tak, CSV jest z natury tabelaryczny, co odpowiada [{...}, {...}, ...]. Jeśli Twój ładunek jest opakowany ({"data": [...]}), podaj samą wewnętrzną tablicę albo pozwól narzędziu wykryć ją automatycznie.

Ty wybierasz: spłaszcz do kolumn w notacji z kropką (user.name, user.email), zachowaj jako ciągi JSON w jednej kolumnie albo skonwertuj na ciąg z separatorem. Spłaszczanie jest domyślne i zwykle to, czego chcesz.

Tak, jeśli wybierzesz separator przecinek, a ustawienia regionalne pasują. Dla europejskiego Excela przełącz na średnik. Dla znaków UTF-8 włącz opcję „dodaj prefiks BOM UTF-8“, by Excel wykrył kodowanie.

Nie. Konwersja działa w Twojej przeglądarce; JSON nigdy nie opuszcza Twojej maszyny. Bezpieczne dla wrażliwych odpowiedzi API lub wewnętrznych zrzutów danych.

Powiązane narzędzia

Narzędzie jest dostępne w innych językach