Что такое бинарный файл?

Читать в полной версии →

Бинарный файл — это набор данных, закодированных в биты виде нулей и единиц. Эти биты собираются в байты, а уже из них складывается содержимое файла, который может быть представлен в виде текста, изображения, музыки, видео или даже исполняемой программы. Однако такой файл не получится просто так открыть и прочитать. В текстовом редакторе он покажет только хаотичный набор символов. Чтобы разобраться в его содержимом, нужны специальные инструменты и понимание структуры файла.

Из чего состоит бинарный файл?

Бинарный файл — это формат хранения данных, которые собраны в байты (каждый байт — это 8 бит). Далее байты складываются в более сложные структуры в зависимости от того, что хранится в файле. Рассмотрим основные составляющие бинарного файла.

1. Заголовок (Header)

Содержит служебную информацию — магическую сигнатуру. Это уникальная последовательность байтов в начале файла, которая позволяет определить его тип. Она служит своего рода «отпечатком пальцев» и используется операционными системами и программами для понимания, как с файлом работать. Пример сигнатуры:

Так, если в изображении заголовок содержит текст 89 50 4E 47, — эта магическая сигнатура указывает, что это файл PNG.

2. Основные данные (Payload)

В этой части файла хранятся закодированные данные:

Данные обычно сжаты или закодированы для экономии места. Например, в формате .mp3 используется алгоритм сжатия, который уменьшить размер аудиофайла без заметной потери качества.

3. Метаданные

Некоторые бинарные файлы включают дополнительные данные о себе:

Метаданные часто отображаются в конце файла или между основными данными и заголовком.

4. Кодовые таблицы или служебные блоки

Некоторые файлы содержат специальные блоки. Например:

Также интересно: Что такое хостинг?

Чем бинарный файл отличается от текстового?

В отличие от бинарного файла с двоичным форматом, текстовый — это понятный для любого человека файл с информацией в виде символов: букв, цифр и т. д. Ниже представлена сравнительная таблица между бинарными и текстовыми файлами.

Характеристика Бинарный файл Текстовый файл
Содержимое Набор нулей и единиц (битов) Понятный, читаемый текст
Пример форматов .bin, .jpg, .mp3, .exe .txt, .html, .csv, .log
Открытие в текстовом редакторе Покажет странный набор символов Покажет текст, который можно прочитать
Использование Хранение сложных данных (изображения, программы, музыка) Запись заметок, кода, данных в таблицах текстом
Скорость обработки Высокая, так как процессор работает с файлом напрямую Медленная, так как компьютер сначала распаковывает файл, затем обрабатывает его
Размер Бинарные файлы весят меньше, потому что хранятся упакованными Тяжелее бинарных файлов

Как создать бинарный файл на компьютере

В интернете можно найти простой способ, как сделать файл бинарным. Там рекомендуют открыть текстовый редактор, ввести пару символов, а потом сохранить файл, указав расширение бинарного файла, отличное от .txt, например .bin. Но такой вариант неверный. Расширение файла не меняет его внутренний формат — файл все равно будет содержать текстовые данные, а не байтовую информацию.

Правильно так. Для работы с двоичными данными запускаем Python и пишем код.

# Создаем бинарный файл
with open("my_binary_file.bin", "wb") as file:
# Записываем данные в виде байтов
file.write(b"\x48\x65\x6C\x6C\x6F") # Это байты, кодирующие слово "Hello"
file.write(b"\x00\x01\x02\x03\x04") # Еще немного байтов
print("Бинарный файл создан!")

После запуска этого кода файл my_binary_file.bin появится в директории пользователя (например, C:\Users\ТвоеИмя>).

Как посмотреть бинарный файл .bin

Компьютер работает с бинарными данными напрямую. Если пытаться прочитать двоичный код в текстовом редакторе, он выдаст произвольный набор символов, потому что текстовый редактор ожидает текст, а не нули и единицы. Поэтому нужно использовать шестнадцатеричные редакторы (Hex-редакторы).

Hex-редактор показывает содержимое файла на уровне байтов и разрешает его изменение. Название Hex (сокращение от Hexadecimal) связано с тем, что данные в таких редакторах отображаются в шестнадцатеричной системе счисления.

Открыть бинарный файл и отредактировать можно с помощью следующих программ:

Если бинарные файлы нужно просто открыть для чтения, сделать это можно следующими инструментами.

1. Эмулятор ISO

Если файл .bin содержит образ диска, например CD/DVD, то используйте программы для работы с дисками:

Эти программы монтируют .bin-файл как виртуальный диск, который можно открыть, как обычный CD/DVD.

2. Архиваторы

Если .bin-файл — это архив, то его можно открыть с помощью архиваторов:

Они позволяют распаковать содержимое файла, если он был закодирован в виде архива.

Читайте также: Какие типы данных существуют в программировании

3. Прошивальщики

Если .bin — это прошивка для устройства (например, роутера, смартфона, ТВ-приставки), то используйте программу, рекомендованную производителем устройства. Например:

4. Лаунчеры

Если .bin — это игровой файл, например от PlayStation или Sega, то используйте эмуляторы:

.bin-файлы здесь работают вместе с .cue-файлами, которые содержат дополнительную информацию о структуре диска.

Заключение

Бинарный файл — это основа, которую необходимо изучить всем начинающим программистам. С их помощью программисты могут хранить и передавать сложные структуры данных, читать и записывать большие объемы информации, сохранять состояние объекта и передавать его, а также выполнять другие задачи. Еще больше основ программирования можно найти в каталоге курсов Хекслет. Там представлены полноценные программы для освоения новой профессии за 10 месяцев и краткие курсы. Некоторые доступны бесплатно.