Данные и форматы

Инструменты для файлов и бинарных данных

Файл с неверным расширением, скачивание, которое могло повредиться, или артефакт сборки, изменившийся без понятной причины в обычном diff, — моменты, когда нужно смотреть не на имя файла, а на его настоящие байты. Здесь собраны просмотр файлов в hex и ASCII, определение реального формата по магическим байтам, побайтовое сравнение бинарных файлов и подсчёт чексумм или сжатие данных.

Определение типа файла читает магические байты и сообщает, если расширение не совпадает с реальным содержимым, — так можно заметить переименованный или неверно помеченный файл раньше, чем он создаст проблемы дальше. Сравнение бинарных файлов показывает точные байтовые смещения, где два файла расходятся, а не просто сообщает, что они разные, а Просмотр заголовков ELF, PE и Mach-O читает эти заголовки напрямую. Декодер source map возвращает свёрнутый стектрейс к исходному файлу и строке.

8 инструментов

Вопросы об инструментах категории «Files, Binary & Compression»

Как понять, что за файл на самом деле, если расширение неверное или отсутствует?

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

Как найти точное место, где различаются два бинарных файла?

Сравнение бинарных файлов читает оба файла побайтово и показывает точные смещения расхождений, а не просто сообщает, что файлы не идентичны. Это полезно при сравнении результатов сборки, образов прошивки или любого бинарного файла, на котором обычный текстовый diff показал бы нечитаемый мусор.

Как прочитать свёрнутый стектрейс JavaScript и вернуться к исходному коду?

Декодер source map берёт source map минифицированного файла и переводит строку и столбец из скомпилированного вывода обратно в исходный файл, строку и имя функции. Нужен файл .map, созданный вместе со сборкой, — без него восстановить соответствие по одному минифицированному коду нельзя.