Название: Восстановление данных на 100%
Автор: Петр Ташков
Жанр: Компьютеры: прочее
Серия: На 100% (Питер)
isbn: 978-5-388-00521-2
isbn:
Рис. 1.2. Окно программы Hexplorer – открыт файл рисунка в формате BMP
Можно предположить, что начало файла – какая-то служебная информация, причем самые первые ее байты указывают на формат файла. Лишь затем следует то содержимое, которое программа, работающая с подобными файлами, должна интерпретировать как рисунок.
Примечание
В Интернете существует ресурс, который неоднократно будет упоминаться – «Википедия», или «Свободная энциклопедия». Она содержит большое количество сведений и о форматах файлов, и о многих других понятиях, всю информацию о которых в одну книгу собрать просто невозможно.
В статье говорится, что BMP-файл действительно состоит из четырех частей:
• заголовок файла (BITMAPFILEHEADER). Первое поле заголовка (первые два байта) является сигнатурой – указанием на тип файла;
• заголовок изображения (BITMAPINFOHEADER) – необязательный компонент, он может отсутствовать;
• палитра, которая также может отсутствовать;
• само изображение – каждый байт описывает одну точку рисунка.
Здесь необходимо сделать важный вывод. Очевидно, что искажение или утрата данных, относящихся к первым трем частям, может привести к тому, что файл перестанет открываться предназначенной для этого программой, хотя вся значимая информация в нем осталась цела. В этом случае появится сообщение «Файл имеет неправильный формат или поврежден». Наоборот, утрата или искажение данных самого изображения никак не повлияет на открытие файла, но в открывшемся рисунке выпадут или будут искажены отдельные фрагменты.
В качестве эксперимента можно сделать несколько копий файла, намеренно испортить каждую из них в разных местах с помощью HEX-редактора, а затем сохранить. Открывая эти файлы стандартным средством просмотра Windows или программой Paint, пользователь убедится в справедливости сделанного ранее вывода.
Подобным образом устроен любой файл, хотя спецификация частей файла зависит от его типа. Описания почти всех форматов опубликованы, их можно найти в Интернете. Некоторые из детальных описаний занимают не один десяток страниц. Причем понятное описание форматов файлов Microsoft Office найти труднее всего, но все же существуют и общие положения.
• В начале файла всегда находится его заголовок (header). Сам заголовок тоже обладает внутренней структурой.
– Заголовок начинается сигнатурой, или «магическим числом». Это фрагмент кода, который однозначно дает понять, что это за файл или какой программой он создан. Например, EXE-файл всегда начинается с символов MZ, архив RAR содержит в своем коде сигнатуру RAR.
– Другие поля заголовка могут содержать информацию о размере файла, указывать, на каком байте заканчиваются заголовки и начинаются собственно данные, и так далее.
• В файле могут присутствовать специфические для данного формата заголовки, например СКАЧАТЬ