Definições INI (.ini)

Padrão Padrão

Windows Initialization Configuration (INI) é um formato clássico de arquivo de configuração, popularizado pelo Microsoft Windows. Ele organiza as configurações de aplicativos em [sections] nomeadas com pares chave=valor.

Converter INI para JSON

Conversor gratuito de INI para JSON no navegador. Converta arquivos instantaneamente no seu dispositivo.

Inspeção e metadados

Sistemas operacionais e analisadores de arquivos identificam arquivos INI pela sequência inicial de bytes:

Selecione ou solte os arquivos aqui

Privado - os arquivos nunca saem do seu dispositivo

ou colar Ctrl+V
Garantia de privacidade sem transmissão pela rede 0 bytes enviados a servidores externos. Todo o processamento ocorreu localmente no ambiente isolado do navegador.

Assinatura do arquivo em bytes (magic bytes)

Sistemas operacionais e analisadores de arquivos identificam arquivos INI pela sequência inicial de bytes:

ASSINATURA HEXADECIMAL (DESLOCAMENTO 0):

5B ... 5D

REPRESENTAÇÃO ASCII: [...]

Padronização: Padrão de fato do setor para arquivos de configuração

Especificações técnicas

Estrutura do contêinerArquivo de configuração em texto simples, organizado em cabeçalhos [section] com pares chave = valor e comentários iniciados por ; ou #
CompressãoArquivo de texto não compactado
Ordem dos bytes (endianness)Fluxo de texto UTF-8 ou ANSI
Espaços de corNão se aplica (arquivo de configuração)
Canais e EstruturaPropriedades de configuração em pares chave-valor, organizadas em seções
Dimensões MáximasLimite histórico de 64 KB no Windows de 16 bits; ilimitado em implementações modernas
TransparênciaNenhum
Streaming e ProgressivoAnalisador sequencial em fluxo, linha por linha

Matriz de comparação técnica: INI e formatos concorrentes

Atributo técnicoINI (Atual)JSONYAMLTOML
Complexidade da sintaxeA mais simples possível (seção + chave=valor)Colchetes e aspas obrigatóriosEspaços e indentação significativosTabelas modernas com tipagem
Suporte a comentáriosNativo (comentários com ; e #)A especificação não permite comentáriosNativo (comentários com #)Nativo (comentários com #)
Estruturas aninhadasApenas seções de nível 1Objetos e matrizes com aninhamento ilimitadoÁrvores aninhadas ilimitadasMatrizes de tabelas estruturadas
Tipagem de dadosStrings implícitas (o aplicativo analisa tipos)Números, booleanos e matrizes explícitosTipos e âncoras explícitosDatas, números e matrizes explícitos

Modos comuns de corrupção e guia de recuperação com editor hexadecimal

O aplicativo ignora as configurações ou falha ao iniciar.

Causa principal: Falta um colchete no cabeçalho da seção (por exemplo, [Settings em vez de [Settings]) ou há um sinal de igual sem escape no valor.

Recuperação: Valide e corrija a sintaxe INI com o formatador de arquivos de configuração do File2File.app.

Análise de segurança e vetores de ataque a analisadores

Ao converter dados em objetos, analisadores INI precisam se proteger contra injeção de seções e poluição de protótipo.

Vetores de ataque conhecidos

  • Injeção INI em que uma quebra de linha na entrada do usuário cria seções de configuração não autorizadas.
  • Poluição de protótipo em analisadores INI de JavaScript que atribuem valores a __proto__.
  • Negação de serviço causada pela expansão recursiva profunda de nomes de seção.

Melhores práticas defensivas: Sanitize as entradas do usuário para bloquear caracteres de quebra de linha e proteger contra poluição de protótipo.

Origens históricas e marcos

2000A biblioteca padrão do Python inclui configparser para trabalhar com arquivos INI.
1995O Windows 95 introduz o Registro do Windows para substituir os arquivos INI de sistema monolíticos (SYSTEM.INI, WIN.INI).
1985O Microsoft Windows 1.0 introduz o WIN.INI como banco de dados central de configuração do sistema operacional.

Principais vantagens

  • A sintaxe é simples e intuitiva; usuários sem conhecimentos técnicos conseguem ler e alterar as configurações facilmente.
  • Quase todas as linguagens de programação oferecem APIs de análise nativas (como configparser no Python e parse_ini_file no PHP).
  • Os espaços de nomes das seções evitam conflitos entre configurações de diferentes recursos do aplicativo.

Limitações técnicas e desvantagens

  • Não há um padrão internacional formal: os caracteres de comentário (; ou #) e as regras de escape variam entre os analisadores.
  • A hierarquia é plana: sem delimitadores personalizados, não há suporte a matrizes profundamente aninhadas nem a objetos estruturados complexos.
  • Todos os valores são lidos como strings; cada aplicativo precisa convertê-los manualmente em inteiros, booleanos ou números de ponto flutuante.

Curiosidades técnicas

  • No Windows 3.1, todas as configurações do sistema operacional ficavam em apenas dois arquivos: WIN.INI e SYSTEM.INI.
  • O Git usa o formato INI em seu arquivo principal de configuração do repositório, localizado em .git/config.
  • Atalhos de aplicativos na área de trabalho do Linux (arquivos .desktop do XDG Desktop Entry) usam a sintaxe INI padrão.

Perguntas técnicas frequentes

Para que serve um arquivo INI?

Arquivos INI são usados por programas de desktop, jogos e ferramentas de desenvolvimento (como a configuração do Git e o PHP.ini) para armazenar preferências e configurações em um formato fácil de ler.

Como posso editar um arquivo INI?

Você pode abrir e editar arquivos INI em qualquer editor de texto básico, como Bloco de Notas, TextEdit ou VS Code, ou diretamente no File2File.app.

Posso converter INI para JSON ou YAML?

Sim. O File2File.app converte arquivos INI em JSON, YAML ou TOML diretamente no navegador.