Словник

Що таке тип файла?

Тип файлу визначає формат файлу, наприклад JPEG, MP3 або PDF. Він установлюється головним чином за першими байтами файлу, а не тільки за його назвою.

file-type

Тип файлу вказує, який саме файл ви маєте, наприклад зображення JPEG або документ PDF. Він задає формат, який визначає, як упорядковані дані всередині файлу.

У звіті про метадані поле File Type показує цей формат як коротку назву, наприклад JPEG або PDF. Значення здебільшого береться з вмісту файлу, тому воно може відрізнятися від розширення імені файлу.

Як виглядає значення

File Type є короткою назвою. Для багатьох форматів це розширення імені файлу, записане великими літерами.

  • PNG для зображення PNG
  • MP4 для відео MP4
  • PDF для документа PDF
  • JPEG для фотографії JPG, незалежно від того, чи закінчується ім'я на .jpg, .jpeg або .jpe
  • TIFF для зображення, ім'я якого закінчується на .tif або .tiff

Деякі типи файлів мають спільну базову структуру. Відео MP4, аудіо M4A та зображення HEIC ґрунтуються на форматі QuickTime.

Аудіо WAV і зображення WebP ґрунтуються на структурі під назвою RIFF. Поле File Type все одно вказує конкретний тип, наприклад MP4 або WAV.

File Type є основою для двох пов'язаних полів: File Type Extension і MIME Type. Для файлу JPEG ці поля показують jpg і image/jpeg. Для аудіо та відеофайлів програма ffprobe також повідомляє формат контейнера як Format Name.

Звідки походить значення

Жодна камера чи програма не записує File Type у файл, і ви не можете змінити це значення. Засіб читання метаданих ExifTool генерує File Type, коли зчитує файл.

Спочатку ExifTool пробує формат, який підказує розширення. Він перевіряє, чи починається файл з фіксованої послідовності байтів, яку використовує цей формат. Якщо байти не збігаються, ExifTool перевіряє інші відомі йому формати.

Цю послідовність часто називають магічним числом або сигнатурою. Файл JPEG починається з байтів FF D8 FF, а файл PNG починається з 89 50 4E 47. Сирий заголовок показує ці перші байти.

Якщо жоден формат не підходить, ExifTool показує помилку замість File Type, наприклад:

  • File format error, якщо ExifTool розпізнає розширення, наприклад .jpg
  • Unknown file type, якщо розширення невідоме або відсутнє
  • File is empty, якщо файл не містить даних

Тип файлу та розширення не є одним і тим самим

Розширення це кінцева частина імені файлу, наприклад .jpg у photo.jpg. У Windows розширення підказує комп'ютеру, якою програмою відкривати файл і яку піктограму показувати.

Будь-хто може змінити розширення, але це не змінює дані всередині файлу. Перейменування photo.jpg на photo.png не перетворює фотографію на зображення PNG.

Оскільки ExifTool читає перші байти, File Type може показати фактичний формат. Якщо для файлу з іменем photo.png відображається JPEG, це зображення JPEG з неправильним розширенням.

Деякі формати не мають магічного числа, тому ця перевірка працює не для кожного файлу. Усередині однієї сім'ї, наприклад форматів raw на основі TIFF, розширення все ще може визначати конкретний тип.

Як дізнатися, який файл у вас

  • Перевірте розширення. У Провіднику файлів Windows 11 виберіть View, потім Show, потім File name extensions. У Windows 10 установіть прапорець File name extensions на вкладці View.
  • Прочитайте поле File Type у метаданих файлу.
  • У Linux запустіть команду file. Вона виконує три набори тестів і виводить тип з першого тесту, який успішно проходить.

Чому це важливо

Якщо розширення не відповідає типу файлу, комп'ютер може вибрати неправильну програму. Веббраузери використовують MIME-тип із вебсервера, а не розширення, щоб вирішити, як обробляти файл.

Мета ключі