откуда компьютер знает расширение файла

409
tristo

Просто любопытный вопрос, как компьютер определяет, что это за файл? Например, как компьютер определяет, что эти страницы являются типом HTML? каждого файла, есть ли информация заголовка в двоичном файле? Распределение баранов? откуда он это знает?

2
Для локальных файлов он обычно ищет «магические» идентификаторы (или, по крайней мере, в направлении) начала содержимого. Если он этого не найдет, он, как правило, будет смотреть на имя. Для вещей вне Интернета, типы MIME обычно используются для определения типа контента. Jerry Coffin 11 лет назад 3

1 ответ на вопрос

4
Chip

Если вы говорите о «расширении», оно находится в названии файла.

Однако эта информация используется ОС для запуска определенного приложения, например Safari / Chrome / Firefox для файлов, заканчивающихся на .html.

Затем приложение использует заголовок (первые несколько байтов) файла, чтобы увидеть, может ли он отображаться. Это может также интерпретировать это способом, который выводит ненужные данные. Например, если вы переименуете файл изображения (.jpg) с расширением .txt, ОС попытается открыть текстовый редактор по умолчанию (NotePad / TextEdit), чтобы открыть его. Редактор попытается интерпретировать его как текстовый файл и не покажет вам изображение.

Вы также упомянули «эту страницу». Эта страница передается по HTTP с superuser.com в ваш браузер. Заголовок HTTP должен указывать, что отправляемые данные - это text / html. Браузер интерпретирует его как HTML и отображает его. Тем не менее, браузеры очень сложны и простительны. Таким образом, даже если заголовок не говорит, что это за тип, он попытается угадать.

Похожие вопросы