JSON Toolkit

Czym jest plik JSON, czym go otworzyć i jak go edytować

Podsumowanie: Od „krzaczków” w Notatniku po trzy sposoby otwarcia pliku JSON, a także jak potwierdzić, że po edycji nic się nie zepsuło, i co zrobić, gdy wielki plik nie chce się otworzyć.

Początkujący~9 min czytaniaOpublikowano 2026-10-30Zaktualizowano 2026-10-30
Okładka artykułu o podstawach plików JSON

Najważniejsze: przed otwarciem pliku JSON potwierdź jego kodowanie i BOM, a następnie sprawdź, czy struktura jest tylko obiektem albo tablicą; po edycji zawsze zweryfikuj go parserem, zamiast oceniać nawiasy i przecinki wzrokiem.

To po prostu plik tekstowy z rozszerzeniem .json, który otworzy nawet Notatnik. Prawdziwy kłopot to nie „nie otwiera się”, ale to, że po otwarciu nie widać, co się zepsuło.

1. Co naprawdę znajduje się w pliku JSON

Poprawny plik JSON może zawierać tylko jedno z dwóch: obiekt {...} albo tablicę [...]. Nic innego nie jest dozwolone — żadnych deklaracji zmiennych, komentarzy czy funkcji.

{
  "name": "order service",
  "port": 8080,
  "debug": false,
  "upstream": ["10.0.0.11", "10.0.0.12"],
  "timeout": null
}

Wystarczy rozpoznać strukturalnie trzy rzeczy:

Co widzisz Znaczenie Odpowiednik w programowaniu
Pary klucz-wartość ujęte w { } Obiekt; klucze muszą być łańcuchami w cudzysłowach Map / struct
Ciąg wartości ujęty w [ ] Tablica; typy elementów mogą się różnić List
Sześć typów wartości Łańcuch, liczba, wartość logiczna, null, obiekt, tablica Tylko te sześć; bez dat i bez liczb całkowitych

Rozszerzenie pliku nie determinuje zawartości: package.json, tsconfig.json i composer.json to wszystko ten sam rodzaj rzeczy; różne narzędzia po prostu umówiły się czytać z nich różne klucze.

2. Trzy sposoby otwarcia, dobierane według scenariusza

Tylko szybki rzut oka: otwórz go w przeglądarce. Przeciągnij plik do okna Chrome lub Edge, a przeglądarka wyświetli go tak, jak jest; jeśli zainstalowano rozszerzenie JSON Viewer, zostanie automatycznie sformatowany i uzyska możliwość zwijania.

Konieczność edycji treści: użyj edytora. VS Code, Sublime i Notepad++ mają podświetlanie składni JSON oraz dopasowywanie nawiasów, a Shift + Alt + F w VS Code formatuje dokument. Uwaga: Notatnik w Windows może dopisać BOM przy zapisie, przez co zmiany konfiguracji mogą nie zadziałać; lepiej go unikać.

Nie chcesz nic instalować, chcesz tylko zweryfikować: użyj formatera JSON online. Wklej treść i od razu zobaczysz numery wierszy i kolumn, położenie błędu oraz drzewo z możliwością zwijania; po zakończeniu skopiuj wynik. Dane są przetwarzane lokalnie w przeglądarce i nie są wysyłane na serwer.

Duże pliki (dziesiątki MB lub więcej): nie otwieraj ich na siłę w edytorze. Otwarcie pliku JSON o rozmiarze 100 MB w VS Code zawiesi program tak, że zaczniesz kwestionować własne wybory; najpierw obejrzyj strukturę z wiersza poleceń:

# Look at the first 20 lines to confirm whether it is an array
head -n 20 data.json

# Use jq to list top-level keys without loading the whole file
jq -r 'keys[]' data.json | head

# Count the array length
jq 'length' data.json

3. Co zrobić, gdy dwuklik otwiera krzaczki

Trzy przyczyny, każda obsługiwana inaczej:

  1. To faktycznie plik binarny (na przykład skompresowane archiwum albo wyeksportowany plik bazy danych z rozszerzeniem .json). Użyj file data.json, aby zobaczyć prawdziwy typ; nie zmuszaj systemu do traktowania go jako tekstu.
  2. Kodowanie to nie UTF-8. Chiński tekst zakodowany w GBK jest krzaczkami w środowisku UTF-8. Użyj w edytorze opcji „Otwórz ponownie z kodowaniem”, spróbuj GBK; jeśli wyświetla się poprawnie, zapisz jako UTF-8.
  3. Plik został zaszyfrowany lub skompresowany. Objawem jest PK (zip) albo sterta znaków zapytania na początku; takie pliki trzeba najpierw zdekompresować lub odszyfrować.

4. Jak potwierdzić, że po edycji nic się nie zepsuło

JSON nie wybacza: jeden brakujący przecinek, jeden zbędny przecinek albo jeden brakujący cudzysłów i cały plik jest martwy, a zgłaszane położenie błędu często wskazuje następny wiersz. Dlatego po edycji musisz zwalidować plik; nie polegaj na wzroku.

Trzy ryzykowne działania podczas edycji, uporządkowane według częstotliwości sprawiania kłopotów:

Działanie Typowa konsekwencja Jak uniknąć
Wklejenie bloku konfiguracji Wprowadza przecinek końcowy lub pełnoekranową interpunkcję Sformatuj od razu po wklejeniu
Ręczne przestawienie kolejności kluczy Zbędny lub brakujący przecinek Używaj poleceń przenoszenia wierszy w edytorze; nie pisz ręcznie od nowa
Usunięcie ostatniego elementu tablicy Zostawia ,] Po usunięciu sprawdź, czy nawiasy się zgadzają

Walidacja jest prosta: wklej treść do walidatora online i szukaj czerwonego tekstu albo uruchom jedną linię w wierszu poleceń:

python3 -m json.tool config.json > /dev/null && echo OK

Jeśli wypisze OK, plik jest poprawny. Jeśli chcesz zweryfikować także typy pól (na przykład port musi być liczbą, a name nie może być puste), napisanie JSON Schema jest znacznie pewniejsze niż ludzkie oko.

5. Czym .json różni się od bliskich krewnych

Rozszerzenie Różnica Czy standardowy parser je odczyta
.json Standardowy JSON Tak
.jsonc Dopuszcza komentarze // i /* */ Nie; najpierw trzeba usunąć komentarze
.json5 Dopuszcza komentarze, pojedyncze cudzysłowy, klucze bez cudzysłowów, przecinki końcowe Nie; wymagany jest parser JSON5
.jsonl / .ndjson Jedna niezależna wartość JSON w wierszu; plik jako całość nie jest poprawnym JSON-em Nie jako całość; trzeba czytać wiersz po wierszu

Nie dziw się komentarzom w tsconfig.json; w rzeczywistości jest obsługiwany jako .jsonc. Podaj tę samą treść do JSON.parse i zgłosi błąd. Gdy trzeba przekonwertować między formatami, użyj JSON5 do JSON, aby jednym kliknięciem usunąć komentarze i przecinki końcowe.

6. Kiedy pora zmienić format przechowywania

JSON pasuje do scenariuszy, w których „struktura nie jest ustalona, człowiek musi ją czytać, a dane podróżują między językami”. Jeśli plik przekracza dziesiątki MB, struktura pól jest stabilna i potrzebne są zapytania warunkowe, pozostanie przy JSON-ie to tylko robienie sobie kłopotów — przejdź do SQLite, Parquet albo wczytaj dane do bazy; wydajność odczytu i zapisu różni się o rzędy wielkości. Szczegółowe kompromisy opisano w Parsowanie i strumieniowanie dużego JSON.

FAQ

Jak obejrzeć plik JSON zbyt duży, by go otworzyć?

Nie otwieraj go na siłę w edytorze; otwarcie pliku o rozmiarze 100 MB w VS Code zawiesi program tak, że zaczniesz kwestionować własne wybory. Najpierw obejrzyj strukturę z wiersza poleceń: head -n 20 potwierdza, czy to tablica, jq -r 'keys[]' wypisuje tylko klucze najwyższego poziomu, a jq 'length' liczy długość tablicy. Żadne z tych poleceń nie wczytuje całego pliku.

Dlaczego moje zmiany w Notatniku nie powodują zadziałania konfiguracji?

Notatnik w Windows może dopisać BOM przy zapisie, a plik z BOM nie przechodzi parsowania konfiguracji, więc edytowana treść nigdy nie działa. Zalecenie artykułu to edytory takie jak VS Code, Sublime lub Notepad++, które mają podświetlanie składni JSON i dopasowywanie nawiasów. Jeśli już użyłeś Notatnika, zapisz ponownie jako „UTF-8 bez BOM” i spróbuj jeszcze raz.

Czy mogę potraktować plik JSON jako JSON5 i dodać komentarze?

Nie — standardowy parser nie dopuszcza komentarzy w pliku .json, a JSON.parse natychmiast zgłasza błąd. Komentarze należą do plików .jsonc lub .json5, czytanych przez odpowiedni parser. Pliki takie jak tsconfig.json są w rzeczywistości obsługiwane jako .jsonc; podanie tej samej treści do JSON.parse kończy się niepowodzeniem.