Convert INI configuration files to JSON
INI files use sections in brackets and key=value pairs. Convert to JSON for programmatic access, validation, and interoperability with modern tools.
- 1
INI format: [section] headers, key=value pairs, comments with ; or #. It is a legacy configuration format common in Windows and Python. Converting to JSON enables schema validation, programmatic modification, and use with modern tools that expect JSON.
- 2 TOML Converter →
Parse the INI file (INI is a subset of TOML's syntax) and convert to JSON. Sections become nested objects, key=value pairs become object properties. Quoted values are parsed as strings; unquoted numbers are parsed as numbers.
- 3 JSON Formatter →
Format the converted JSON for readability. INI files often have inconsistent spacing and quoting — formatting normalizes the output. Verify that sections and keys were correctly mapped to the JSON structure.
- 4
INI limitations: no nested sections (only one level), no arrays, no type information (everything is a string). If your config needs these features, migrate to TOML or YAML instead of INI. The conversion to JSON is a one-way migration — use JSON or TOML going forward.
Frequently asked questions
- Can INI have nested sections?
- Standard INI does not support nesting. Some implementations (Python configparser) allow [section.subsection] which creates a flat key, not a nested object. If you need nesting, use TOML, YAML, or JSON instead.
- How are duplicate keys handled?
- It depends on the parser. Some take the last value, some raise an error, some create an array. This ambiguity is a weakness of INI — JSON does not have this problem because duplicate keys are undefined behavior (most parsers take the last value).
Workflows that solve this
Learn more
Want to understand why?