INI-Einstellungen (.ini)
De-facto-Branchenstandard StandardDie Windows-Initialisierungskonfiguration (INI) ist das klassische, für Menschen lesbare Konfigurationsdateiformat, das durch Microsoft Windows populär gemacht wurde und Anwendenseinstellungen in benannten [Abschnitten] mit Schlüssel-Wert-Paaren organisiert.
Von INI zu JSON konvertieren
Kostenloser Konverter von INI zu JSON im Browser. Konvertieren Sie Dateien sofort auf Ihrem Gerät.
Untersuchen & Metadaten
Betriebssysteme und Dateianalysatoren identifizieren INI-Dateien durch Untersuchung der führenden binären Byte-Sequenz:
Byte-basierte Headersignatur (Magic Bytes)
Betriebssysteme und Dateianalysatoren identifizieren INI-Dateien durch Untersuchung der führenden binären Byte-Sequenz:
HEX-SIGNATUR (OFFSET 0):
5B ... 5DASCII-DARSTELLUNG: [...]
Standardisierung: De-facto-Branchenstandard für Konfigurationen
Technische Daten
| Container-Architektur | Einfache Text-Konfigurationsdatei, strukturiert in [Abschnitt]-Überschriften mit Schlüssel-Wert-Paaren und Kommentaren (; oder #) |
| Kompression | Unkomprimierte Textdatei |
| Byte-Endianness | UTF-8- oder ANSI-Textstrom |
| Farbräume | Nicht zutreffend (Konfigurationsdatei) |
| Kanäle & Struktur | Schlüssel-Wert-Konfigurationseigenschaften, kategorisiert nach Abschnittsnamensräumen |
| Max. Abmessungen | Historisches 64-KB-Limit in 16-Bit-Windows; unbegrenzt in modernen Implementierungen |
| Transparenz | Keine |
| Streaming & Progressiv | Sequenzieller zeilenbasierter Streaming-Parser |
Technischer Vergleich: INI im Vergleich zu Wettbewerbern
| Technisches Attribut | INI (Aktuell) | JSON | YAML | TOML |
|---|---|---|---|---|
| Syntaxkomplexität | Einfachstmöglich (Abschnitt + Schlüssel=Wert) | Strikte Klammern und Anführungszeichen | Einrückungsempfindlicher Whitespace | Moderne typisierte Tabellen |
| Kommentarunterstützung | Nativ (; und #-Kommentare) | Keine Kommentare in der Spezifikation unterstützt | Nativ (#-Kommentare) | Nativ (#-Kommentare) |
| Verschachtelte Strukturen | Nur 1-Ebenen-Abschnitte | Unendlich verschachtelte Objekte/Arrays | Unendlich verschachtelte Bäume | Strukturierte Tabellenarrays |
| Datentypisierung | Implizite Strings (Anwendung analysiert Typen) | Explizite Zahlen, Booleans, Arrays | Explizite Typen und Anker | Explizite Datumsangaben, Zahlen, Arrays |
Häufige Korruptionsarten & Hex-Wiederherstellungsleitfaden
Anwendung ignoriert Einstellungen oder startet nicht.
Ursache: Fehlende Abschnitts-Header-Klammer (z. B. '[Settings' statt '[Settings]') oder unmaskiertes Gleichheitszeichen im Wert.
Wiederherstellung: Validieren und reparieren Sie die INI-Syntax mit dem File2File-Konfigurationsformatierer.
Sicherheitsanalyse & Parser-Angriffsvektore
INI-Parser müssen sich vor Abschnittsinjektionsangriffen und Prototyp-Verschmutzung beim Deserialisieren in Objekte schützen.
Bekannte Angriffsvektore
- INI-Injektion, bei der Zeilenumbrüche in Benutzereingaben unbefugte Konfigurationsabschnitte erstellen.
- Prototyp-Verschmutzung in JavaScript-INI-Parsern, die '__proto__' zuweisen.
- Denial of Service durch tief rekursive Abschnittsnamenserweiterung.
Bewährte Sicherheitsverfahren: Bereinigen Sie Benutzereingaben, um Zeilenumbruchzeichen zu verbieten und sich vor Prototyp-Verschmutzung zu schützen.
Historische Ursprünge & Meilensteine
Hauptvorteile & Stärken
- Außergewöhnlich saubere, intuitive Syntax: Nicht-technische Benutzer können Einstellungen leicht lesen und ändern.
- Native Analyse-APIs in fast jeder Programmiersprache (Python configparser, PHP parse_ini_file, C#).
- Abschnittsnamensräume verhindern Einstellungskollisionen über verschiedene Anwendungsfunktionen hinweg.
Technische Einschränkungen & Nachteile
- Kein formaler internationaler Standard: Kommentarzeichen (; vs. #) und Maskierungsregeln variieren zwischen Parsern.
- Flache Hierarchie: Unterstützt keine tief verschachtelten Arrays oder komplexe strukturierte Objekte ohne benutzerdefinierte Trennzeichen.
- Alle Werte werden als Zeichenfolgen gelesen, was erfordert, dass Anwendungen Ganzzahlen, Boolesche Werte und Gleitkommazahlen manuell analysieren.
Interessante technische Wissenswertes
- In Windows 3.1 wurde jede einzelne Einstellung im gesamten Betriebssystem in nur zwei Dateien gespeichert: WIN.INI und SYSTEM.INI.
- Git verwendet das INI-Format für seine primäre Repository-Konfigurationsdatei, die sich unter '.git/config' befindet.
- Desktop-Verknüpfungsdateien unter Linux (XDG Desktop Entry '.desktop'-Dateien) sind mit der Standard-INI-Syntax strukturiert.
Häufig gestellte technische Fragen
Wofür wird eine INI-Datei verwendet?
INI-Dateien werden von Desktop-Software, Spielen und Entwicklertools (wie Git-Konfiguration und PHP.ini) verwendet, um Benutzerpräferenzen und Konfigurationseinstellungen in einem leicht lesbaren Format zu speichern.
Wie kann ich eine INI-Datei bearbeiten?
Sie können INI-Dateien mit jedem einfachen Texteditor wie Notepad, TextEdit, VS Code oder direkt online über File2File.app öffnen und bearbeiten.
Kann ich INI in JSON oder YAML konvertieren?
Ja. File2File.app kann INI-Dateien sofort in Ihrem Browser in saubere JSON-, YAML- oder TOML-Formate konvertieren.