Konwersja CSV na JSON

Ten darmowy konwerter zamienia plik CSV na JSON z jednym obiektem na wiersz: wiersz nagłówka daje klucze, liczby oraz true i false dostają właściwe typy, a kody pocztowe i inne wartości z zerami wiodącymi zostają tekstem. Konwersję wykonuje Twoja przeglądarka, więc plik CSV nie jest wysyłany na serwer. Daty zostają tekstem, bo JSON nie ma typu daty, a wynikiem jest jeden dokument JSON, nie JSON Lines.

Plik nie przekonwertował się poprawnie? Napisz na [email protected], najlepiej z małym przykładowym plikiem, a błąd zostanie naprawiony.

Najważniejsze informacje

Po co konwertować CSV na JSON

Aplikacje internetowe, API, dane testowe, generatory stron statycznych i bazy NoSQL oczekują JSON-a, a dane często zaczynają życie w arkuszu zapisanym jako CSV. Ten konwerter zamienia każdy wiersz w obiekt JSON, a wiersz nagłówka w klucze. Wykrywa separator i kodowanie, także w plikach ze średnikami i przecinkiem dziesiętnym z europejskiego Excela, i pokazuje pierwsze wiersze, abyś mógł sprawdzić kolumny. Liczby stają się liczbami JSON, true i false wartościami logicznymi, a puste komórki wartością null, natomiast wartości z zerami wiodącymi, takie jak kody pocztowe, zostają tekstem. Jeśli wolisz samodzielnie decydować o typach, zostaw wszystko jako tekst. Kolumny z kropką w nazwie, na przykład address.city, mogą stać się zagnieżdżonymi obiektami, a gdy wynik ma być jak najmniejszy, możesz wybrać listę wierszy zamiast obiektów. Wynikiem jest JSON w UTF-8 z wcięciami, dzięki którym łatwo go czytać.

Jak przekonwertować CSV na JSON

  1. Upuść plik CSV w polu lub kliknij, aby go wybrać.
  2. Sprawdź kolumny w podglądzie i wybierz, jak mają wyglądać wartości i układ.
  3. Kliknij „Konwertuj na JSON” i pobierz plik .json.

Co się zmienia podczas konwersji

Pierwszy wiersz to nagłówek

Pierwszy wiersz podaje nazwy kluczy. Puste nazwy stają się column_1, column_2 i tak dalej, a do powtórzonej nazwy dodawane jest _2, więc żadna wartość nie zostaje nadpisana. Wiersze tytułowe nad nagłówkiem najpierw usuń w arkuszu.

Liczby, które nie są liczbami

Kody pocztowe takie jak 0150, kody takie jak 007 i liczby mające więcej niż 15 cyfr zostają tekstem, bo zamiana na liczby JSON usunęłaby zera lub cyfry. Liczby z separatorem tysięcy, na przykład 1,250.00 lub 1.250,00, również zostają tekstem.

Daty zostają tekstem

JSON nie ma typu daty, więc daty są zapisywane dokładnie tak, jak w CSV, na przykład „2024-05-01”. Jeśli Twój program wymaga określonego formatu, przekształć daty w arkuszu przed zapisaniem CSV.

Zagnieżdżone klucze

Przy opcji zagnieżdżania kolumny address.city i address.zip tworzą jeden obiekt address. Jeśli istnieje też kolumna o nazwie address, kolumny z kropką pozostają płaskie, więc żadna wartość nie ginie.

O formatach plików

CSV

CSV (comma-separated values, wartości rozdzielone przecinkami) to tabela w zwykłym tekście: jeden wiersz pliku na wiersz tabeli, a komórki rozdzielone przecinkiem, średnikiem lub tabulatorem. Excel, Arkusze Google, Numbers, każda baza danych i większość języków programowania czyta i zapisuje ten format, dlatego jest to typowy sposób przenoszenia tabeli z jednego programu do drugiego.

  • Nie ma standardu separatora: Excel używa przecinka lub średnika w zależności od ustawień językowych.
  • Każda wartość jest tekstem; to program czytający plik decyduje, czy 0800 to liczba, czy kod pocztowy.
  • Nie ma arkuszy, formuł, kolorów ani szerokości kolumn, tylko wartości.
  • Kodowanie nie jest zapisywane w pliku; UTF-8 to bezpieczny wybór, a Excel potrzebuje znacznika BOM, aby je rozpoznać.

JSON

JSON (JavaScript Object Notation) to format tekstowy, którego do przechowywania danych używa większość internetowych API, aplikacji i plików konfiguracyjnych. Wartości mogą być zagnieżdżone: rekord może zawierać inny rekord lub listę, czego płaska tabela nie potrafi.

  • Obiekty przechowują nazwane wartości, listy wartości w określonej kolejności; jedne i drugie można zagnieżdżać dowolnie głęboko.
  • Wartości to tekst, liczby, true/false lub null, więc kod zapisany jako „0150” pozostaje tekstem.
  • JSON Lines (.jsonl, .ndjson) zapisuje jeden obiekt JSON w każdym wierszu, co jest popularne w logach i eksportach danych.
  • Tekst jest zawsze w Unicode, zwykle w UTF-8.

Najczęściej zadawane pytania

Czy mój plik CSV jest wysyłany na serwer?

Nie. Twoja przeglądarka odczytuje plik i zapisuje JSON na Twoim własnym urządzeniu; nic nie trafia na serwer.

Jakie separatory są obsługiwane?

Przecinek, średnik, tabulator i kreska pionowa są wykrywane automatycznie, podobnie jak wiersz „sep=”, który Excel czasem dodaje. Jeśli podgląd pokazuje wszystkie wartości w jednej kolumnie, wybierz separator samodzielnie.

Czy mogę dostać JSON Lines?

Nie bezpośrednio. Narzędzie zapisuje jeden dokument JSON. Większość programów czytających JSON Lines czyta też listę JSON, a właśnie listy JSON oczekuje większość API i narzędzi.

Co z bardzo dużymi plikami?

Działają pliki do 200 MB. JSON jest zwykle dwa do trzech razy większy niż CSV, bo każda wartość niesie swój klucz, dlatego układ w postaci listy wierszy daje mniejszy plik.