2013-11-16 4 views
0

До сих пор я понял:Как различаются типы файлов?

  • Файлы имеют некоторую информацию в своих «заголовки», какие программы используют для определения типа файла.

    1. Всегда ли это так? Если да, то как я могу увидеть заголовок?

      Это единственный способ определить тип файла?

    2. Есть ли способ вручную создать пустой файл (по крайней мере, в Linux) без заголовков?

    3. Если да, то я могу вручную написать свой заголовок и создать простой файл «JPG»

ответ

1
  1. Нет, файлы просто имеют байты и некоторые метаданные, как имя файла, разрешения последнего изменения время. Формат этих байтов полностью свободен и открыт без согласования. Конечно, некоторые типы файлов, такие как jpegs, gif, аудио и видео файлы, имеют заголовки, указанные в их форматах. Просмотр заголовка полностью зависит от формата. Обычно они состоят из байт-кодов, бессмысленных для человеческого глаза, поэтому для их декодирования и просмотра обычно требуется программное обеспечение.

  2. Да.

    сенсорный EMPTYFILE

  3. Звуки болезненным. Используйте библиотеку для записи jpeg. Заголовки не всегда легко создавать. Кто-то еще сделал эту тяжелую работу для вас, поэтому я буду использовать ее.

0

Файл является не более чем последовательностью байтов и не имеет внутренней структуры по умолчанию. Это абстракция, сделанная ОС, чтобы сделать ее более удобной для хранения и управления данными.

Файлы могут представлять различные типы изображений, видео, аудио и обычный текст, поэтому их необходимо интерпретировать определенным образом, чтобы взаимодействовать с их содержимым. Например; изображение открывается в средстве просмотра изображений, PDF-документ открывается в программе просмотра PDF; звуковой файл открывается в медиаплеере. Это не означает, что вы не можете открыть изображение в текстовом редакторе - содержимое файла будет интерпретироваться иначе.

Ближе всего к файлу метаданных в UNIX и Linux является inode - которая хранит информацию о файлах, но не являются частью самих файлов - и файлы-х magic number. Используйте stat для проверки inode и используйте file, чтобы определить его тип (иногда по его магическому числу).

Также ознакомьтесь с man file для получения дополнительной информации о типах файлов.

Смежные вопросы