INI podešavanja (.ini)

De Standardno

Windows konfiguracija inicijalizacije (INI) klasični je format konfiguracione datoteke čitljiv ljudima koji je popularizovao Microsoft Windows, organizujući postavke aplikacije u imenovane [odeljke] koji sadrže parove ključ=vrednost.

Конвертујте INI у JSON

Бесплатан INI у JSON конвертор у прегледачу. Конвертујте фајлове тренутно без слања на сервер уз 100% приватност.

Pregledaj i metapodaci

Operativni sistemi i analizatori datoteka identifikuju INI datoteke proverom početnog binarnog niza bajtova:

Изаберите или превуците датотеке овде

100% приватна конверзија у прегледачу – датотеке никада не напуштају ваш уређај

или налепите Ctrl+V
100% Локална обрада у прегледачу 0 бајтова послато спољним серверима. Сва обрада је извршена локално у безбедном окружењу вашег прегледача.

Potpis zaglavlja na nivou bajtova (Magic Bytes)

Operativni sistemi i analizatori datoteka identifikuju INI datoteke proverom početnog binarnog niza bajtova:

HEX POTPIS (OFFSET 0):

5B ... 5D

ASCII REPREZENTACIJA: [...]

Standardizacija: De facto industry configuration standard

Tehničke specifikacije

Arhitektura kontejneraPlaintext configuration file structured into [section] headers containing key = value pairs and comments (; or #)
KompresijaUncompressed text file
Bajtni redosled (Endianness)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
TransparentnostNone
Strimovanje i progresivno učitavanjeSequential line-by-line streaming parser

Tehnička matrica poređenja: INI vs Konkurenti

Tehnički atributINI (Trenutno)JSONYAMLTOML
Složenost sintakseNajjednostavnija moguća (odeljak + ključ=vrednost)Stroge zagrade i navodniciPrazan prostor osetljiv na uvlakeModerne tabele sa tipovima podataka
Podrška za komentareIzvorna (; i # komentari)Nema podrške za komentare u specifikacijiIzvorni (# komentari)Izvorni (# komentari)
Ugnježđene struktureSamo odeljci sa 1 nivoomBeskonačni ugnježđeni objekti/nizoviBeskonačna ugnježđena stablaNizovi strukturiranih tabela
Tipizacija podatakaImplasciht niske (aplikacija parsira tipove)Eksplicitni brojevi, Bulove vrednosti, nizoviEksplicitni tipovi i sidraEksplicitni datumi, brojevi, nizovi

Uobičajeni režimi oštećenja i vodič za heksadecimalni oporavak

Aplikacija ignoriše postavke ili ne uspeva da se pokrene.

Osnovni uzrok: Nedostaje zagrada zaglavlja odeljka (npr. '[Settings' umesto '[Settings]') ili nekodirani znak jednakosti u vrednosti.

Oporavak: Potvrdite i popravite INI sintaksu pomoću alata File2File Config Formatter.

Bezbednosna analiza i vektori napada parsera

INI parseri moraju da se zaštite od napada injekcijom odeljaka i zagađenja prototipa (prototype pollution) prilikom deserijalizacije u objekte.

Poznati vektori napada

  • INI injekcija gde uvođenje novog reda u korisničkom unosu kreira neovlašćene konfiguracione odeljke.
  • Zagađenje prototipa u JavaScript INI parserima dodelom vrednosti za '__proto__'.
  • Uskraćivanje usluge (DoS) kroz duboko rekurzivnu ekspanziju imena odeljaka.

Defanzivne najbolje prakse:

Istorijat i prekretnice

2000Standardna biblioteka Pajtona integriše ConfigParser modul, čvrsto pozicionirajući INI kao univerzalni format softverske konfiguracije.
1995Windows 95 uvodi Windows registar da bi zamenio monolitne sistemske INI datoteke (SYSTEM.INI, WIN.INI).
1985Microsoft Windows 1.0 uvodi WIN.INI kao osnovnu konfiguracionu bazu podataka operativnog sistema.

Ključne prednosti

  • Izuzetno čista, intuitivna sintaksa: tehnički manje obučeni korisnici mogu lako pročitati i izmeniti postavke.
  • Izvorni API-ji za parsiranje u skoro svakom programskom jeziku (Python configparser, PHP parse_ini_file, C#).
  • Imenski prostori odeljaka sprečavaju preklapanje postavki u različitim funkcijama aplikacije.

Tehnička ograničenja i nedostaci

  • Nema formalni međunarodni standard: znakovi za komentare (; vs #) i pravila navodnika se razlikuju u zavisnosti od parsera.
  • Ravna hijerarhija: ne podržava duboko ugnježđene nizove ili složene struktuirane objekte bez prilagođenih separatora.
  • Sve vrednosti se čitaju kao niske (stringovi), što zahteva od aplikacija da ručno parsiraju cele brojeve, Bulove vrednosti i decimalne brojeve.

Zanimljivosti

  • U Windowsu 3.1, svaka pojedinačna postavka u celom operativnom sistemu bila je uskladištena u samo dve datoteke: WIN.INI i SYSTEM.INI.
  • Git koristi INI format za svoju primarnu konfiguracionu datoteku skladišta koja se nalazi na lokaciji '.git/config'.
  • Datoteke prečica na radnoj površini na Linux-u (XDG Desktop Entry '.desktop' datoteke) strukturirane su pomoću standardne INI sintakse.

Često postavljana tehnička pitanja

Čemu služi INI fajl?

INI fajlove koriste desktop softver, igre i alati za razvoj (kao što su Git config i PHP.ini) za čuvanje korisničkih podešavanja i konfiguracija u lako čitljivom formatu.

Kako mogu da izmenim INI fajl?

Možete da otvorite i izmenite INI fajlove pomoću bilo kog osnovnog uređivača teksta kao što su Notepad, TextEdit, VS Code, ili direktno onlajn koristeći File2File.app.

Mogu li da konvertujem INI u JSON ili YAML?

Da. File2File.app može trenutno da konvertuje INI fajlove u čiste JSON, YAML ili TOML formate direktno u vašem pretraživaču.