INI postavke (.ini)

De Standardno

Windows Initialization Configuration (INI) klasični je čitljivi format konfiguracijske datoteke koji je popularizirao Microsoft Windows, organizirajući postavke aplikacije u imenovane [odjeljke] koji sadrže parove ključ=vrijednost.

Pretvori INI u JSON

Besplatni INI u JSON pretvarač u pregledniku. Trenutno pretvorite datoteke na svom uređaju.

Pregledaj i metapodaci

Operativni sustavi i alati za analizu datoteka identificiraju INI datoteke provjerom početnog niza binarnih bajtova:

Odaberite ili ispustite datoteke ovdje

100% privatna pretvorba u pregledniku - datoteke nikada ne napuštaju vaš uređaj

ili zalijepi Ctrl+V
Jamstvo privatnosti nulte mrežne transmisije: 0 bajtova učitano na vanjske poslužitelje. Sva obrada odvijala se lokalno u sandčiću vašeg preglednika.

Potpis zaglavlja na razini bajtova (Magic Bytes)

Operativni sustavi i alati za analizu datoteka identificiraju INI datoteke provjerom početnog niza binarnih bajtova:

HEX POTPIS (POMAK 0):

5B ... 5D

ASCII PRIKAZ: [...]

Standardizacija: De facto industry configuration standard

Tehničke specifikacije

Arhitektura spremnikaPlaintext configuration file structured into [section] headers containing key = value pairs and comments (; or #)
KompresijaUncompressed text file
字节序UTF-8 or ANSI text stream
Prostori bojaN/A (Configuration File)
Kanali i strukturaKey-value configuration properties categorized by section namespaces
Maksimalne dimenzijeHistorical 64 KB limit in 16-bit Windows; unlimited in modern implementations
ProzirnostNone
Streaming i progresivnoSequential line-by-line streaming parser

Tehnička matrica usporedbe: INI vs Konkurencija

Tehnički atributINI (Trenutno)JSONYAMLTOML
Složenost sintakseNajjednostavnija moguća (odjeljak + ključ=vrijednost)Stroge zagrade i navodniciBjelina osjetljiva na uvlakuModerne tipizirane tablice
Podrška za komentareNativna (; i # komentari)Nema podrške za komentare u specifikacijiNativna (# komentari)Nativna (# komentari)
Ugniježđene struktureSamo odjeljci s 1 razinomBeskonačno ugniježđeni objekti/nizoviBeskonačno ugniježđena stablaStrukturirani nizovi tablica
Tipizacija podatakaImplicirani nizovi znakova (aplikacija parsira tipove)Eksplicitni brojevi, boolean vrijednosti, nizoviEksplicitni tipovi i sidraEksplicitni datumi, brojevi, nizovi

Uobičajeni načini oštećenja i vodič za heksadecimalni oporavak

Aplikacija ignorira postavke ili se ne može pokrenuti.

Temeljni uzrok: Nedostaje zagrada zaglavlja odjeljka (npr. '[Postavke' umjesto '[Postavke]') ili neescapirani znak jednakosti u vrijednosti.

Oporavak: Provjerite i ispravite INI sintaksu pomoću alata File2File Config Formatter.

Sigurnosna analiza i vektori napada na parser

INI parseri se moraju zaštititi od napada ubacivanjem odjeljaka i zagađenja prototipa pri deserijalizaciji u objekte.

Poznati vektori napada

  • INI injekcija gdje unos novog retka u korisničkom unosu stvara neovlaštene konfiguracijske odjeljke.
  • Zagađenje prototipa u JavaScript INI parserima koji dodjeljuju vrijednosti na '__proto__'.
  • Uskaćivanje usluge (DoS) kroz duboko rekurzivno proširivanje naziva odjeljaka.

Najbolje obrambene prakse:

Povijesni izvori i prekretnice

2000Pythonova standardna biblioteka integrira modul ConfigParser, čime se INI učvršćuje kao univerzalni format konfiguracije softvera.
1995Windows 95 predstavlja Windows registar kao zamjenu za monolitne sistemske INI datoteke (SYSTEM.INI, WIN.INI).
1985Microsoft Windows 1.0 uvodi WIN.INI kao središnju bazu podataka konfiguracije operativnog sustava.

Ključne prednosti

  • Iznimno čist, intuitivan sintaksa: netehnički korisnici mogu jednostavno čitati i mijenjati postavke.
  • Nativni API-ji za parsiranje u gotovo svakom programskom jeziku (Python configparser, PHP parse_ini_file, C#).
  • Imenski prostori odjeljaka sprječavaju sukobe postavki u različitim značajkama aplikacije.

Tehnička ograničenja i nedostaci

  • Nema službeni međunarodni standard: znakovi za komentare (; naspram #) i pravila pobjega razlikuju se među parserima.
  • Ravna hijerarhija: ne podržava duboko ugniježđene nizove ili složene strukturirane objekte bez prilagođenih graničnika.
  • Sve se vrijednosti čitaju kao nizovi znakova, što zahtijeva da aplikacije ručno parsiraju cijele brojeve, boolean vrijednosti i decimalne brojeve.

Zanimljive tehničke činjenice

  • U Windowsima 3.1, svaka pojedinačna postavka u cijelom operativnom sustavu bila je pohranjena u samo dvije datoteke: WIN.INI i SYSTEM.INI.
  • Git koristi INI format za svoju glavnu konfiguracijsku datoteku spremišta koja se nalazi u '.git/config'.
  • Datoteke prečaca na radnoj površini na Linuxu (XDG Desktop Entry '.desktop' datoteke) strukturirane su pomoću standardne INI sintakse.

Često postavljana tehnička pitanja

Za što se koristi INI datoteka?

INI datoteke koriste računalni programi, igre i razvojni alati (poput konfiguracije za Git i PHP.ini) za spremanje korisničkih postavki i konfiguracijskih parametara u lako čitljivom formatu.

Kako mogu urediti INI datoteku?

INI datoteke možete otvoriti i uređivati pomoću bilo kojeg osnovnog uređivača teksta poput Notepada, TextEdita, VS Code-a ili izravno na mreži pomoću alata File2File.app.

Mogu li pretvoriti INI u JSON ili YAML?

Da. File2File.app može trenutno u vašem pregledniku pretvoriti INI datoteke u čiste formate JSON, YAML ili TOML.