Что мы подразумеваем под "форматом файла"?
4 ответа
Файл, любой файл, это просто набор байтов. Ничего более.
Чтобы использовать эти байты, программы должны уметь понимать, что они означают, и поэтому формат файла - это особый способ упорядочения байтов и / или данных, закодированных таким образом, чтобы программы, которые намереваются взаимодействовать с файлом, могли его понять.
Многие форматы файлов имеют спецификации, которые документируют, как файлы кодируются, что позволяет нескольким программам легко взаимодействовать и / или создавать файлы этого типа.
Но любой может создать новый формат файла, я сам делал это несколько раз для заданий по программированию в университете. Просто решив, как их данные будут расположены в одной последовательности байтов, чтобы их программа могла перечитать правильные данные в более позднее время.
По сути, это способ организации информации в файлах. Файлы просто 1 и 0 сгруппированы по 8 (байтов).
Давайте рассмотрим пример формата файла для изображений. Если вы хотите поместить изображение в файл, как вы можете это сделать? Вы можете сказать, что изображение состоит из нескольких пикселей и что все пиксели имеют 3 значения: красный, зеленый, синий (это основные цвета, с которыми вы можете делать все остальные). Вы также хотите указать размер изображения раньше (например: 5x10 или 10x5).
Поэтому для изображения черного цвета 2х3 пикселя наш основной формат файла (каждая цифра - байт, я сгруппирован по значению):
2 3 000 000 000 000 000 000
Это очень просто, вы можете добавить: возможность иметь прозрачные пиксели, сжатие (например, 000 000 становится 6 0), метаданные, такие как имя автора, работа с фигурами, а не пикселями и т.д. Все это вносит изменения в формат вашего файл.
Каждый формат имеет свои преимущества в зависимости от использования.
Программы понимают некоторые форматы, а не другие, и иногда вы можете найти конвертеры из одного в другой.
Несколько примеров форматов:
- Изображения: BMP, JPG, SVG, GIF, PNG
- Текстовый документ: DOC, ODT, SXW
- Звук: MP3, WAV, OGG
- Видео: webm, quicktime, h264, ogg/theora
Что такое язык? Любое животное может издавать звуки. Что отличает наши звуки от собак? Что делает это понятным? Что отличает английский от китайского?
Перевод, согласен с определением слов, грамматики и т.д. У разных языков разные правила. Различные диалекты одного и того же языка имеют разные правила (американский английский против британского английского против английского уличного гетто)
Формат файла тот же ... это то, что превращает Нули и Единицы в А и В, исполняемый файл, картинку или музыку.
Как MP3 переходит от данных к звуку? Формат файла описывает, как обрабатывать данные и каков желаемый результат.
Это способ идентифицировать содержимое файла, подходящее для одного типа потребителей. Есть два популярных способа сделать это: а) расширение имени файла; и / или b) по коду, также известному как магическое число, в начале файла.
Некоторые пользователи, такие как Windows Explorer, полагаются на расширения файлов.
Другие потребители, такие как команда Unix file(1), используют первые два байта файла, чтобы определить его предполагаемое использование.
Некоторые потребители требуют обоих. Виртуальная машина Java проверяет код 0xCAFEBABE, чтобы убедиться, что файл содержит байт-код Java. Он также настаивает на расширении .class (или .cla). XML также делает это, чтобы обеспечить согласованность между платформами, которые изначально предпочитают один подход другому.