Konwerter CSV na JSON
Zamień tabelę CSV na tablicę obiektów JSON, w całości w przeglądarce.
Działa w całości w twojej przeglądarce. Nic nie jest wysyłane, logowane ani przechowywane.
Wklej eksport z arkusza kalkulacyjnego i odbierz tablicę JSON: jeden obiekt na wiersz, z kluczami w postaci nazw kolumn. Wszystko dzieje się w przeglądarce, więc plik pełen danych klientów, wynagrodzeń czy pozycji zamówień nigdy nie opuszcza twojego komputera.
Jak to działa
Dokument jest czytany znak po znaku zgodnie z RFC 4180, dzięki czemu pole może zawierać separator, znak nowej linii albo własny cudzysłów: wszystko w cudzysłowie podwójnym jest dosłowne, a podwojony cudzysłów oznacza jeden cudzysłów. Dzielenie po przecinkach i znakach nowej linii posypałoby się na pierwszym adresie zawierającym przecinek.
Pierwszy wiersz staje się nazwami kolumn, chyba że zaznaczysz inaczej — wtedy każdy wiersz wraca jako tablica zamiast obiektu. Pusta nazwa zamienia się w column_1, column_2 i tak dalej według pozycji, a powtórzona nazwa dostaje przyrostek liczbowy, bo dwa identyczne klucze w jednym obiekcie oznaczają, że pierwsza kolumna po cichu znika.
Każda wartość przychodzi jako ciąg znaków, bo CSV nie ma typów. Rozpoznawanie typów to pole wyboru, a nie zachowanie domyślne: to właśnie ono zamienia kod produktu 007 w liczbę 7. Po włączeniu działa celowo ostrożnie: zero na początku, plus na początku albo otaczająca spacja zostawiają wartość jako ciąg znaków, podobnie jak liczba całkowita zbyt duża, by przetrwać jako double.
Przykłady
| Przypadek | Dane wejściowe | Wynik |
|---|---|---|
| Pole w cudzysłowie zawierające separator | name,city "Doe, John",Geneva | [ { "name": "Doe, John", "city": "Geneva" } ] |
Najczęściej zadawane pytania
Mój plik używa średników. Czy to nadal CSV?
Tak, i w dużej części Europy to norma. Arkusz kalkulacyjny zapisujący CSV w ustawieniach regionalnych, w których ułamki dziesiętne zapisuje się przecinkiem, nie może używać przecinka także jako separatora, więc używa średnika. Wybierz go na liście separatorów; tabulator i kreska pionowa są tam z tego samego powodu.
Dlaczego mój kod pocztowy stracił zero na początku?
Nie stracił, chyba że masz włączone rozpoznawanie typów. Bez niego każda wartość zostaje ciągiem znaków dokładnie w takiej postaci, w jakiej ją zapisano. Po jego włączeniu wartości zaczynające się od zera i tak pozostają ciągami właśnie z tego powodu, podobnie jak wszystko, co zaczyna się od plusa lub jest otoczone spacjami.
Co z wierszem, który ma inną liczbę pól?
Krótki wiersz jest uzupełniany pustymi ciągami, bo puste pole na końcu często usuwa program, który zapisał plik. Długi wiersz zachowuje nadmiarowe wartości z nazwami według pozycji, zamiast je odrzucać, więc nic nie znika bez twojej wiedzy.
Czy mój plik jest gdzieś wysyłany?
Nie. Strona ładuje mały skrypt, który analizuje dokument lokalnie. Po załadowaniu strony możesz odłączyć się od sieci, a narzędzie nadal będzie działać.
Warto wiedzieć
- Wszystko dzieje się w przeglądarce. Dokument nie jest wysyłany, rejestrowany ani przechowywany.
- Cudzysłowy zgodnie z RFC 4180: pole ujmuje się w cudzysłów, gdy zawiera separator, cudzysłów podwójny lub znak nowej linii, a cudzysłów podwójny wewnątrz takiego pola zapisuje się dwukrotnie. Ukośniki wsteczne są zwykłymi znakami i nigdy nie są traktowane jako znaki ucieczki.
Źródła
Wszystkie narzędzia z kategorii Kod