Jak używać
- Wklej tablicę obiektów JSON, otwórz plik .json lub naciśnij „Wypróbuj przykład”.
- Wybierz separator używany przez arkusz kalkulacyjny oraz sposób zapisu tablic wewnątrz obiektów.
- Sprawdź podgląd CSV. Każdy obiekt to osobny wiersz, a zagnieżdżone pola stają się kolumnami, takimi jak address.city.
- Skopiuj CSV lub pobierz je jako plik .csv.
Jak to działa
Każdy element głównej tablicy staje się osobnym wierszem. Kolumny obejmują wszystkie klucze, w kolejności ich pierwszego wystąpienia, dzięki czemu obiekty o różnych polach są prawidłowo dopasowane. Brakujące pole lub wartość null daje pustą komórkę. Zagnieżdżone obiekty są spłaszczane, a ich nazwy pól tworzą ścieżki rozdzielone kropkami: {"address": {"city": "Oslo"}} staje się kolumną o nazwie address.city. Jeśli głównym elementem jest pojedynczy obiekt, wynikiem jest jeden wiersz. Tablice zwykłych wartości (takich jak [1, 2, 3]) tworzą jedną kolumnę o nazwie value.
Tablice wewnątrz obiektów można zapisać na trzy sposoby: jako tekst JSON w jednej komórce (["a","b"]), połączyć w jednej komórce (a; b) lub rozdzielić na ponumerowane kolumny (tags.0, tags.1). Ostatnia opcja sprawdzi się, gdy każdy wiersz zawiera podobną, krótką listę.
Wynik jest zgodny z RFC 4180: pole ujmuje się w podwójne cudzysłowy, gdy zawiera separator, podwójny cudzysłów lub znak końca wiersza, a cudzysłowy w jego treści są podwajane. Wiersze kończą się znakami końca wiersza CRLF. W wielu europejskich ustawieniach regionalnych Excel oczekuje średników zamiast przecinków, ponieważ przecinek służy jako separator dziesiętny. Excel może też zmienić format długich liczb, zer wiodących i tekstu przypominającego datę podczas otwierania pliku CSV. Jeśli dokładne wartości mają znaczenie, zaimportuj plik jako tekst. Liczby większe niż 2^53 tracą precyzję podczas parsowania JSON.
Przykłady
Eksportowanie użytkowników z API
API zwraca [{"id":1,"name":"Ada","address":{"city":"London"}}, …]. CSV zawiera kolumny id, name i address.city, gotowe do sortowania i filtrowania w arkuszu kalkulacyjnym.
Tekst z przecinkami i cudzysłowami
Nazwa taka jak Alan "AT" Turing zmienia się w "Alan ""AT"" Turing", a miasto takie jak Wilmslow, Cheshire zostaje ujęte w cudzysłowy, dzięki czemu programy do arkuszy kalkulacyjnych umieszczają każdą wartość we własnej komórce.
Otwieranie w niemieckiej lub francuskiej wersji Excel
Wybierz średnik jako separator i włącz BOM UTF-8. Excel prawidłowo rozdzieli kolumny i wyświetli znaki takie jak ä i é bez błędów kodowania.
Często zadawane pytania
Co się dzieje z głęboko zagnieżdżonym JSON?
Zagnieżdżone obiekty na każdym poziomie są spłaszczane do nazw kolumn w postaci ścieżek rozdzielonych kropkami, na przykład order.customer.address.zip. Tablice są zapisywane zgodnie z wybraną opcją: jako tekst JSON, połączone wartości lub osobna kolumna dla każdego elementu.
Dlaczego niektóre komórki są puste?
Komórka jest pusta, gdy dany obiekt nie zawiera klucza lub jego wartością jest null. Kolumny są tworzone na podstawie wszystkich obiektów, więc klucz występujący tylko w niektórych z nich również otrzymuje własną kolumnę.
Którego separatora użyć?
Standardowym separatorem jest przecinek. Wybierz średnik dla Excel w ustawieniach regionalnych, w których przecinek oddziela część dziesiętną (w dużej części Europy i Ameryki Łacińskiej), a tabulator, gdy dane zawierają wiele przecinków lub chcesz wkleić je bezpośrednio do arkusza kalkulacyjnego.
Czy można przekonwertować CSV z powrotem na JSON?
Tak, za pomocą dostępnego w tej witrynie konwertera CSV do JSON. Pamiętaj, że spłaszcenie nie jest w pełni odwracalne: nazwy kolumn będące ścieżkami rozdzielonymi kropkami wracają jako zwykłe klucze, takie jak "address.city", a nie jako zagnieżdżone obiekty.
Prywatność
Konwersja odbywa się w przeglądarce. JSON i wynikowy plik CSV nie są przesyłane ani przechowywane, a ich dane nie są uwzględniane w analityce.