Nastavení INI (.ini)

De Standardní

Windows Initialization Configuration (INI) je klasický konfigurační souborový formát s čitelným obsahem pro lidské čtenáře, který zpopularizoval systém Microsoft Windows a organizuje nastavení aplikací do pojmenovaných sekcí [sections] obsahujících páry klíč=hodnota.

Převést INI do JSON

Bezplatný konvertor z INI do JSON v prohlížeči. Převeďte soubory okamžitě ve svém zařízení.

Zkontrolovat a metadata

Operační systémy a analyzátory souborů identifikují soubory INI kontrolou počáteční binární sekvence bajtů:

Vyberte nebo přetáhněte soubory sem

100% soukromá konverze v prohlížeči - soubory nikdy neopustí vaše zařízení

nebo vložte Ctrl+V
Záruka ochrany soukromí s nulovým přenosem po síti: 0 bajtů odesláno na externí servery. Veškeré zpracování probíhalo lokálně v sandboxu vašeho prohlížeče.

Podpis hlavičky na úrovni bajtů (Magic Bytes)

Operační systémy a analyzátory souborů identifikují soubory INI kontrolou počáteční binární sekvence bajtů:

HEXADECIMÁLNÍ PODPIS (OFFSET 0):

5B ... 5D

ASCII REPREZENTACE: [...]

Standardizace: De facto industry configuration standard

Technické specifikace

Architektura kontejneruPlaintext configuration file structured into [section] headers containing key = value pairs and comments (; or #)
KompreseUncompressed text file
Endiantita bajtůUTF-8 or ANSI text stream
Barevné prostoryN/A (Configuration File)
Kanály a strukturaKey-value configuration properties categorized by section namespaces
Max. rozměryHistorical 64 KB limit in 16-bit Windows; unlimited in modern implementations
PrůhlednostNone
Streamování a progresivní načítáníSequential line-by-line streaming parser

Technická srovnávací matice: INI vs konkurence

Technický atributINI (Aktuální)JSONYAMLTOML
Složitost syntaxeNejjednodušší možná (sekce + klíč=hodnota)Přísné závorky a uvozovkyBílé znaky citlivé na odsazeníModerní typové tabulky
Podpora komentářůNativní (komentáře ; a #)Komentáře nejsou ve specifikaci podporoványNativní (komentáře #)Nativní (komentáře #)
Vnořené strukturyPouze 1úrovňové sekceNekonečně vnorené objekty/poleNekonečně vnorené stromyStrukturovaná pole tabulek
Typování datImplicitní řetězce (aplikace parsuje typy)Explicitní čísla, booleovské hodnoty, poleExplicitní typy a kotvyExplicitní data, čísla, pole

Běžné režimy poškození a příručka pro obnovení v hex

Aplikace ignoruje nastavení nebo se nespustí.

Hlavní příčina: Chybějící závorka hlavičky sekce (např. „[Settings" namísto „[Settings]") nebo neošetřené rovnítko v hodnotě.

Obnovení: Ověřte a opravte syntaxi INI pomocí nástroje File2File Config Formatter.

Bezpečnostní analýza a vektory útoků na parser

Parsery formátu INI se musí chránit proti útokům injekcí sekcí a znečištění prototypu (prototype pollution) při deserializaci do objektů.

Známé vektory útoků

  • Injekce INI, kde vložení nového řádku do vstupu uživatele vytvoří neautorizované konfigurační sekce.
  • Znečištění prototypu v parserech INI v jazyce JavaScript při přiřazování do proměnné „__proto__".
  • Odpojení služby (Denial of Service) prostřednictvím hluboce rekurzivního rozbalování názvů sekcí.

Doporučené bezpečnostní postupy:

Historický vývoj a milníky

2000Standardní knihovna jazyka Python integruje modul ConfigParser, čímž upevňuje formát INI jako univerzální konfigurační formát softwaru.
1995Windows 95 zavádí registr systému Windows jako náhradu za monolitické systémové soubory INI (SYSTEM.INI, WIN.INI).
1985Microsoft Windows 1.0 zavádí soubor WIN.INI jako hlavní konfigurační databázi operačního systému.

Klíčové výhody a přednosti

  • Výjimečně čistá a intuitivní syntaxe: netechničtí uživatelé mohou snadno číst a upravovat nastavení.
  • Nativní parsovací rozhraní API téměř v každém programovacím jazyce (Python configparser, PHP parse_ini_file, C#).
  • Jmenné prostory sekcí zabraňují kolizím nastavení napříč různými funkcemi aplikace.

Technická omezení a nevýhody

  • Žádný formální mezinárodní standard: znaky komentářů (; vs #) a pravidla escapování se u jednotlivých parserů liší.
  • Plochá hierarchie: nepodporuje hluboce vnorené pole nebo složité strukturované objekty bez vlastních oddělovačů.
  • Všechny hodnoty jsou načteny jako řetězce, což vyžaduje, aby aplikace ručně parsovaly celá čísla, booleovské hodnoty a desetinná čísla.

Zajímavé technické drobnosti

  • V systému Windows 3.1 bylo každé jednotlivé nastavení v celém operačním systému uloženo pouze ve dvou souborech: WIN.INI a SYSTEM.INI.
  • Git používá formát INI pro svůj hlavní konfigurační soubor úložiště umístěný na cestě „.git/config".
  • Soubory zástupců plochy v systému Linux (soubory „.desktop" XDG Desktop Entry) jsou strukturovány pomocí standardní syntaxe INI.

Často kladené technické otázky

K čemu se používá soubor INI?

Soubory INI používá desktopový software, hry a vývojářské nástroje (např. konfigurace Git a PHP.ini) k ukládání uživatelských předvoleb a konfiguračních nastavení ve snadno čitelném formátu.

Jak mohu upravit soubor INI?

Soubory INI můžete otevřít a upravit v libovolném základním textovém editoru, jako je Poznámkový blok, TextEdit, VS Code, nebo přímo online pomocí File2File.app.

Mohu převést INI na JSON nebo YAML?

Ano. File2File.app dokáže okamžitě v prohlížeči převést soubory INI do čistých formátů JSON, YAML nebo TOML.