Просмотр двоичных файлов в hex
В пошаговом режиме выбранный файл временно хранится в этом браузере не более двух часов. Он не отправляется на сервер.
Чтение выбранного фрагмента...
Показанный тип сообщает браузер; по сигнатуре файла он не проверяется.
байты -
Показан только выбранный фрагмент. Остальная часть файла для этого дампа не считывалась.
Hex dump раскладывает байты файла в три колонки: слева абсолютное байтовое смещение, по центру двухзначные hex-значения, справа приблизительное ASCII-представление. Просмотрщик локально читает ограниченный фрагмент файла. По умолчанию он начинает со смещения 0 и 64 KiB; доступны 4 KiB, 16 KiB, 64 KiB, 256 KiB и 1 MiB.
Как читать этот hex dump
-
1
Перетащите один файл
Подойдет двоичный файл, текст, изображение, архив или исполняемый файл. Браузер читает его как сырые байты.
-
2
Выберите отображаемый фрагмент
Введите целое десятичное начальное смещение в пределах файла и выберите 4 KiB, 16 KiB, 64 KiB, 256 KiB или 1 MiB. Значения наподобие 0x10 не принимаются. Последний короткий фрагмент заканчивается на конце файла.
-
3
Читайте по 16 байт в строке
Каждая строка показывает абсолютное 8-значное hex-смещение, до 16 hex-значений байтов и боковую колонку ASCII.
-
4
Копируйте или сравнивайте
Скопируйте видимый dump или сравните байты с известными сигнатурами. Просмотрщик не ищет и не редактирует, не интерпретирует многобайтовые числа, не экспортирует файл и не определяет форматы автоматически.
Структура одной строки
00000000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 |.PNG........IHDR|
^смещение^ ^--- 16 байт в hex --------------------------^ ^-- ASCII ----^
- Смещение, Абсолютная позиция байта в файле, начиная с нуля, отображается как 8-значный hex.
- Hex-значения, Шестнадцать байт в строке; каждый байт показан двумя шестнадцатеричными цифрами.
- Колонка ASCII, Байты от
0x20до0x7Eвыводятся как ASCII; все остальные показываются как..
Распространенные файловые сигнатуры (magic bytes)
Magic bytes являются подсказками, а не гарантированным доказательством. Они особенно полезны на смещении ноль, но форматы могут иметь общий префикс или содержать вложенные файлы. Форматы на основе ZIP, например DOCX, XLSX, JAR и APK, могут начинаться с 50 4B 03 04, и этот просмотрщик не определяет формат автоматически.
| Байты (hex) | Возможная подсказка формата |
|---|---|
89 50 4E 47 0D 0A 1A 0A |
Изображение PNG |
FF D8 FF E0 |
Изображение JPEG/JFIF |
47 49 46 38 39 61 |
Изображение GIF89a |
25 50 44 46 |
Документ PDF (%PDF) |
50 4B 03 04 |
Локальный заголовок файла ZIP; также часто встречается в DOCX, XLSX, JAR, APK |
7F 45 4C 46 |
Исполняемый файл ELF или объектный файл |
4D 5A |
Исполняемый файл DOS/Windows PE (MZ) |
1F 8B |
Данные, сжатые gzip |
42 4D |
Изображение BMP (BM) |
49 49 2A 00 |
Изображение TIFF, little-endian |
Что этот просмотрщик умеет и чего не умеет
- Локальное чтение байтов, Показанный dump создается в браузере из выбранного файла.
- Проверка ограниченного фрагмента, Введите допустимое байтовое смещение и изучите до 1 MiB от этой точки. Для дампа браузер читает только этот фрагмент.
- Контекст MIME и размера, Инструмент показывает MIME-тип, который сообщил браузер, или
binary, а также полный размер файла в байтах. - Копируемый результат, Кнопка копирования позволяет использовать видимый dump в заметках, тикетах или сравнениях в командной строке.
- Не полноценный hex-редактор, Он не ищет, не подсвечивает совпадения, не редактирует байты, не скачивает экспорт, не определяет сигнатуры автоматически и не интерпретирует 16-, 32- или 64-битные значения. Поэтому порядок байтов endianness не применяется: байты всегда показаны в порядке файла.
Ограничения отображения
Средство выбора принимает ровно один непустой файл размером до 100 MiB, но hex dump читает и показывает не более 1 MiB с выбранного смещения. Браузер превращает в ArrayBuffer только этот фрагмент Blob/File; содержимое не отправляется на сервер. В пошаговом режиме временная копия в IndexedDB, находящаяся только в браузере, сохраняет файл между страницами не более двух часов, а Начать заново удаляет активную копию. В обычном одностраничном режиме выбранный File остается только в памяти страницы. Для поиска, редактирования, интерпретации чисел или автоматической проверки формата используйте hex-редактор или специализированный парсер.
Часто задаваемые вопросы
Нет. Это полезное свидетельство, особенно на смещении ноль, но не полный парсер. Рассматривайте их как подсказку и проверяйте важные файлы инструментом для конкретного формата.
Нет. Инструмент работает только для чтения и показывает выбранный фрагмент. Он не интерпретирует многобайтовые числа, поэтому настроек little-endian и big-endian нет. Для редактирования и типизированных значений используйте hex-редактор.
Нет. Dump создается локально с помощью arrayBuffer() из фрагмента Blob/File. Пошаговый режим временно хранит выбранный файл в этом браузере, а обычный держит его только в памяти страницы.
Можно ввести любое допустимое начальное смещение и показать до 1 MiB от него. Просмотрщик не ищет, не подсвечивает совпадения, не экспортирует дампы и не загружает весь файл сразу.
Сопутствующие инструменты
Справочная таблица ASCII
Полная таблица ASCII от 0 до 127 с десятичным, шестнадцатеричным, восьмеричным и двоичным представлением, а также записью числовых ссылок HTML, включая NUL, LF и DEL.
Конвертер BBCode в HTML
Преобразуйте BBCode (разметку форумов) в чистый HTML. Поддерживает теги форматирования, списки, цитаты, код, изображения, ссылки и таблицы.
Генератор случайных цветовых палитр
Создавайте случайные палитры из 2–15 цветов, выбирайте яркий, пастельный, приглушенный или темный стиль и копируйте HEX-коды или CSS-переменные.
Выбор цвета HEX
Выберите или введите HEX-цвет и получите RGB, HSL, примерный CMYK, относительную яркость и контраст с белым и чёрным.
Конвертер двоичного кода в ASCII
Вставьте двоичный код (байты через пробел или длинный поток битов) и получите текст ASCII, который он представляет. Поддерживает 7-битные и 8-битные кодировки.
Генератор цветовой палитры
Создавайте монохромные, аналоговые, комплементарные, триадные или тетрадные палитры из базового HEX-цвета и экспортируйте готовые CSS-переменные.