O tipo de arquivo é determinado por uma combinação de fatores:
*
O aplicativo de criação: O fator mais significativo. Quando um programa (como o Microsoft Word, o Photoshop ou um editor de vídeo) cria um arquivo, ele atribui metadados (muitas vezes informações invisíveis) indicando o tipo do arquivo. Este pode ser um identificador de tipo de arquivo explícito (como .docx para documentos do Word) ou estruturas internas dentro do próprio arquivo que os programas usam para reconhecer seu formato.
*
A extensão do arquivo: Esta é a parte do nome do arquivo após o período final (por exemplo, ".txt", ".pdf", ".jpg"). Embora *crucial para a identificação do usuário *, nem sempre é uma maneira infalível de determinar o tipo de arquivo real. Um arquivo malicioso pode usar uma extensão enganosa.
*
Cabeçalho do arquivo: Muitos tipos de arquivos têm uma "assinatura" exclusiva ou cabeçalho no início do arquivo. Esta é uma sequência específica de bytes que identifica o formato do arquivo. Os sistemas e programas operacionais geralmente usam esse cabeçalho para verificar o tipo de arquivo, mesmo que a extensão esteja ausente ou incorreta.
*
Estrutura de arquivo interno: A organização geral e as estruturas de dados * dentro * do próprio arquivo também contribui para a identificação do tipo. Por exemplo, um arquivo PDF possui uma estrutura específica que o distingue de um JPEG.
Em resumo, o aplicativo que cria o arquivo é primário, a extensão do arquivo é um indicador legível pelo homem frequentemente usado em conjunto com outros métodos, e o cabeçalho do arquivo e a estrutura interna são usados pelo sistema operacional e aplicativos para identificação precisa. O sistema operacional usa essas informações para escolher o aplicativo correto para abrir o arquivo.