JSON Toolkit

Co je soubor JSON, čím ho otevřít a jak ho upravovat

Shrnutí: Od rozsypaného textu v Poznámkovém bloku ke třem způsobům otevření souboru JSON, plus jak po úpravě ověřit, že se nic nerozbilo, a co dělat, když se obrovský soubor neotevře.

Začátečník~9 min čteníPublikováno 2026-10-30Aktualizováno 2026-10-30
Titulní obrázek článku Základy souborů JSON

Stručně: než soubor JSON otevřete, ověřte jeho kódování a BOM a poté zkontrolujte, že strukturu tvoří pouze objekt nebo pole; po úpravě ho vždy validujte parserem, místo abyste závorky a čárky kontrolovali zrakem.

Je to prostý textový soubor s příponou .json a otevře ho i Poznámkový blok. Skutečný problém není „nejde otevřít“, ale že jakmile je otevřený, nevidíte, co jste rozbili.

1. Co vlastně soubor JSON obsahuje

Platný soubor JSON může obsahovat jen jednu ze dvou věcí: objekt {...} nebo pole [...]. Nic jiného není povoleno – žádná deklarace proměnných, žádné komentáře, žádné funkce.

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

Strukturálně stačí rozpoznat tři věci:

Co vidíte Význam Odpovídající programový koncept
Dvojice klíč-hodnota uzavřené v { } Objekt; klíče musí být řetězce v dvojitých uvozovkách Map / struct
Posloupnost hodnot uzavřená v [ ] Pole; typy prvků se mohou lišit List
Šest typů hodnot Řetězec, číslo, boolean, null, objekt, pole Pouze těchto šest; žádná data a žádná celá čísla

Přípona souboru neurčuje obsah: package.json, tsconfig.json i composer.json jsou stejný druh věci; různé nástroje se jen dohodly, že z nich budou číst různé klíče.

2. Tři způsoby otevření podle situace

Jen se rychle podívat: otevřete ho v prohlížeči. Přetáhněte soubor do okna Chrome nebo Edge a prohlížeč jej zobrazí tak, jak je; pokud je nainstalováno rozšíření JSON Viewer, automaticky se naformátuje a zpřístupní sbalování.

Potřebujete obsah upravit: použijte editor. VS Code, Sublime i Notepad++ mají zvýrazňování syntaxe JSON a párování závorek a ve VS Code dokument naformátujete pomocí Shift + Alt + F. Pozor, Poznámkový blok ve Windows může při ukládání přidat BOM, takže se změny konfigurace nemusí projevit; raději se mu vyhněte.

Nechcete nic instalovat, jen chcete validovat: použijte online formátovač JSON. Vložte obsah a hned uvidíte čísla řádků a sloupců, umístění chyb i sbalitelný strom; až skončíte, výsledek zkopírujte. Data se zpracovávají lokálně v prohlížeči a neodesílají se na server.

Velké soubory (desítky MB a více): neotevírejte je násilím v editoru. Otevření 100MB souboru JSON ve VS Code zablokuje program tak, že začnete pochybovat o svých životních volbách; nejprve prozkoumejte strukturu z příkazového řádku:

# Podívejte se na prvních 20 řádků a ověřte, zda jde o pole
head -n 20 data.json

# Pomocí jq vypište klíče nejvyšší úrovně bez načtení celého souboru
jq -r 'keys[]' data.json | head

# Spočítejte délku pole
jq 'length' data.json

3. Co dělat, když po dvojkliku uvidíte rozsypaný text

Tři příčiny, každá se řeší jinak:

  1. Ve skutečnosti je to binární soubor (například komprimovaný archiv nebo exportovaná databáze s příponou .json). Pomocí file data.json zjistěte skutečný typ; nechte ho jako text jen násilím.
  2. Kódování není UTF-8. Čínský text kódovaný v GBK je v prostředí UTF-8 rozsypaný. V editoru zkuste jednou „znovu otevřít s kódováním“ GBK; pokud se zobrazí správně, uložte ho jako UTF-8.
  3. Soubor je zašifrovaný nebo zkomprimovaný. Projevem je PK (zip) nebo hromada otazníků na začátku; takové soubory je nejprve třeba dekomprimovat nebo dešifrovat.

4. Jak po úpravě ověřit, že se nic nerozbilo

JSON má nulovou toleranci: jedna chybějící čárka, jedna čárka navíc nebo jedna chybějící uvozovka a celý soubor je mrtvý, přičemž hlášené místo chyby často ukazuje na následující řádek. Proto je po úpravě nutné validovat; nespoléhejte na oči.

Tři rizikové úpravy, seřazené podle četnosti problémů:

Úkon Běžný následek Jak se vyhnout
Vložení bloku konfigurace Přinese koncovou čárku nebo celošířkovou interpunkci Ihned po vložení jednou naformátujte
Ruční prohození pořadí klíčů Čárka navíc nebo chybějící čárka Použijte příkazy editoru pro přesun řádků; nepište to ručně
Smazání posledního prvku pole Zůstane ,] Po smazání zkontrolujte, že se závorky párově uzavírají

Validace je jednoduchá: vložte obsah do online validátoru a hledejte červený text, nebo spusťte jeden řádek z příkazového řádku:

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

Pokud vypíše OK, je soubor platný. Pokud chcete validovat i typy polí (například port musí být číslo a name nesmí být prázdné), je zápis JSON Schema mnohem spolehlivější než lidské oko.

5. Jak se .json liší od blízkých příbuzných

Přípona Rozdíl Umí ji standardní parser přečíst
.json Standardní JSON Ano
.jsonc Povoluje komentáře // a /* */ Ne; komentáře je nejprve nutné odstranit
.json5 Povoluje komentáře, jednoduché uvozovky, klíče bez uvozovek, koncové čárky Ne; je třeba parser JSON5
.jsonl / .ndjson Jeden samostatný JSON na řádek; soubor jako celek není platný JSON Ne jako celek; musí se číst řádek po řádku

Nedivte se, že tsconfig.json obsahuje komentáře; ve skutečnosti se zpracovává jako .jsonc. Stejný obsah předejte JSON.parse a vyvolá chybu. Když mezi nimi potřebujete převádět, použijte JSON5 do JSON k odstranění komentářů a koncových čárek jedním kliknutím.

6. Kdy je čas změnit úložný formát

JSON se hodí pro scénáře, kde „struktura není pevná, lidé ji potřebují číst a cestuje mezi jazyky“. Pokud soubor přesáhne desítky MB, struktura polí je stabilní a potřebujete podmíněné dotazy, setrvávat u JSON znamená vyrábět si potíže – přejděte na SQLite, Parquet nebo data nahrajte do databáze; výkon čtení a zápisu se liší řádově. Konkrétním kompromisům se věnuje Parsování a streamování velkého JSON.

Časté dotazy

Jak prozkoumat soubor JSON, který je příliš velký na otevření?

Neotevírejte ho násilím v editoru; otevření 100MB souboru JSON ve VS Code zablokuje program tak, že začnete pochybovat o svých životních volbách. Nejprve prozkoumejte strukturu z příkazového řádku: head -n 20 ověří, zda jde o pole, jq -r 'keys[]' vypíše pouze klíče nejvyšší úrovně a jq 'length' spočítá délku pole. Žádný z těchto příkazů nenačítá celý soubor.

Proč se moje úpravy v Poznámkovém bloku neprojeví v konfiguraci?

Poznámkový blok ve Windows může při ukládání přidat BOM a soubor s BOM selže při parsování konfigurace, takže upravený obsah se nikdy neprojeví. Doporučení článku je používat editory jako VS Code, Sublime nebo Notepad++, které mají zvýrazňování syntaxe JSON a párování závorek. Pokud jste Poznámkový blok už použili, uložte znovu jako „UTF-8 bez BOM“ a zkuste to znovu.

Můžu soubor JSON považovat za JSON5 a přidat komentáře?

Ne – standardní parser nedovoluje komentáře v souboru .json a JSON.parse okamžitě vyvolá chybu. Komentáře patří do souborů .jsonc nebo .json5, které čte odpovídající parser. Soubory jako tsconfig.json se ve skutečnosti zpracovávají jako .jsonc; stejný obsah předejte JSON.parse a selže.